
Java读取数据库记录,并把读取到的数据现在是在jsp页面需要用到一下几种技术:
1,jdbc java连接数据库技术
2,Tomcat 运行jsp页面所需要的服务器
servlet 属于web主流在当前要求中,不使用。也可以达到相同效果
1jdbcproperties
driver=commicrosoftjdbcsqlserverSQLServerDriver
url=jdbc:microsoft:sqlserver://Ip地址:1433;databaseName=test
user=test
password=test
2一个Servlet
import javaioPrintStream;
import javasql;
import javautilResourceBundle;
public class DBOperator
{
public DBOperator()
{
}
public static void main(String args[])
{
Connection con = getConnection();
Systemoutprintln("connection success");
closeConnection(con);
Systemoutprintln("close success");
}
public static Connection getConnection()
{
try
{
return DriverManagergetConnection(url, user,
password);
}
catch(SQLException e)
{
eprintStackTrace();
}
return null;
}
public static void closeConnection(Connection con)
{
try
{
if(con != null)
conclose();
}
catch(SQLException e)
{
eprintStackTrace();
}
}
private static String url;
private static String user;
private static String password;
static
{
ResourceBundle bundle = ResourceBundlegetBundle("路径");
try
{
ClassforName(bundlegetString("driver"));
}
catch(ClassNotFoundException e)
{
eprintStackTrace();
}
url = bundlegetString("url");
user = bundlegetString("user");
password = bundlegetString("password");
}
}
使用Boyer-Moore算法
或者使用KMP算法
建议使用后者
KMP算法(java)
public class KMP {
/
@param args
/
//计算模式串的next值
public static void getNext(String strModel, int dNext[]){
int i = 0,j = 1;
dNext[1] = 0;
while(j < strModellength()){
while(i > 0 && strModelcharAt(i) != strModelcharAt(j))//递推
i = dNext[i];
i++;
j++;
if(j == strModellength())
break;
if(strModelcharAt(j) == strModelcharAt(i))//得出next值
dNext[j] = dNext[i] + 1;
else
dNext[j] = i;
}
}
//利用next值查询子串
public static int getSubString(String strMain, String strModel, int dStart){
int dPos = -1;
int i = dStart;
int j = 1;
int dNext[] = new int[200];
getNext(strModel, dNext);
while(i<strMainlength()){
if(strMaincharAt(i) == strModelcharAt(j)){//当前字符匹配
if(j == (strModellength()-1)){//查找成功
dPos = i - j + 1;
break;
}
i++;
j++;
}
else{//当前字符不匹配
if(dNext[j] == 0){
i++;
j = 1;
}
else{
j = dNext[j];
}
}
}
return dPos;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String strModel = " jlsdjflskjdm";
int[] dNext = new int[20];
getNext(strModel, dNext);
for(int i = 1; i<strModellength(); i++)
Systemoutprint(dNext[i] + " ");
String strMain = " aaaaaaaaaaabbbcdabbksfjlsdjflskjd";
Systemoutprintln();
Systemoutprintln(getSubString(strMain, strModel, 1));
}
}
我想请问下你是不会java的代码还是不会highcharts的代码哦?highcharts不是提供了很多例子吗?你只需要用java将从数据库查询到的数据转换成json格式传到前台就可以展示效果了啊。
这个要依赖本地的实际环境,谁有那么多时间给你写啊,而且不是一两句代码的事情。你可以自己尝试去写,不会的地方可以问我。
希望可以帮助到你,望采纳,谢谢,有问题可以继续追问我
1下面代码是使用jdbc直接来链接mysql的 *** 作,方式与SQL SERVER类似,区别在于加载的驱动不同,url的设置也有点区别。
2执行脚本返回的结果,可以看出java成功链接上mysql并获取到返回值
3mysql-connector-java-5126-binjar是java链接mysql使用的jar包,与SQL SERVER链接也有专门的jar包,jar包中包含了java链接mysql所用到的函数驱动等等,所有的jar包都是放到web工程lib目录下
4如果工程是整合在ssh下,一般情况下都会有一个properties文件,该文件配置了数据库链接常用的命令,下图是mysql中的配置
5使用spring框架下进行的测试,结果可以成功执行,无论是sql server还是mysql还是其他的数据库,基本功能都一样,只是语法结构有所区别,java在调用的过程中大部分功能只要切换了数据库链接命令就可以公用,如果系统架构设计的足够好,切换数据库的时候,应用程序是不用调整就能兼容的
你要实现的这个可能跟SpringMvc的关系不是很大。
你要达到的目的其实就是在jvm启动的时候把数据库数据加载一份到内存,一个静态变量和一个静态初始化块就可以搞定你的问题,这两者都是在类加载的时候初始化一次,像前面回答的一样,你可以用一个HashMap搞定。稍微具体来说,一个静态变量
publicstaticfinalMapcache=newHashMap()
static{
cache=请求数据库 *** 作
}
key你自己加,String还是int都行,value是你数据库的结构,可以写个实体。获取的时候直接cacheget(key)就可以了。
java如何从数据库读取数据并写入txt文件:
将数据查询出来放在list中,然后写入文件。
给你个写入的类,查询数据自己如果能搞定最好了。
FileWriterfileWriter=newFileWriter("c:\Resulttxt");
int[]a=newint[]{11112,222,333,444,555,666};
for(inti=0;i
fileWriterwrite(StringvalueOf(a[i])"");
}
fileWriterflush();
fileWriterclose();
上面例子中的a也可以是list。
以上就是关于java从数据库中读取的数据怎样显示在jsp的网页当中全部的内容,包括:java从数据库中读取的数据怎样显示在jsp的网页当中、java服务器加载的时候读取数据库配置信息例子、如何java读取海量中文文本等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)