JSP如何连接数据库

JSP如何连接数据库,第1张

一般的原则是页面不直接调用底层方法,如果你只是练习的话就再页面上直接调用也可以,写在<%%>中,和java中的使用方法一样,new对象,使用哪个方法,需要导包,java也一样,导包可以既在myeclipse中alt+/组合键自动导,也可以在头部手动写。如楼上。

个人建议你在sevlet里面调用,这个就是单纯的java调用了。然后用request等内置对象存,页面去取就可以了。这个也符合MVC的设计思想。实际开发中也会这么做。没有人会给jsp页面中写一堆java代码的。初学应该养成良好的习惯。

呵呵,楼主既然思路都有了还怕写不出代码么?

你这个思路没有问题的!

可以把这个问题拆分成几个小问题,就简单多了。

第一是文件上传,可以参照Jakarta的FileUpload组件,其实也不一定要用这个,用普通的Post也就行了。

第二是Excel解析,用JSL或者POI都行

第三是数据保存,这个应该简单吧,一个循环,一行对应一条数据,写好了方法循环赋值调用就行了。

第四是查询和显示,这个更简单了,不用多说。

文件上传和Excel解析的例子网上很多的,改改就变自己的了,何必在这管别人要代码呢~

(1)获取文本框内容

(2)连接数据库

(3)查询数据库

(4)插入数据

(5)以表格形式输出数据库中的数据

<%@page contentType="text/html;charset=gbk" %>

<%@page import="javasql" %>

<%

String sidbook=requestgetParameter("idbook");// 获取文本框内容

String idbook=new String(sidbookgetBytes("iso-8859-1"));

String scategoryname=requestgetParameter("categoryname");

String categoryname=new String(scategorynamegetBytes("iso-8859-1"));

String sbookname=requestgetParameter("bookname");

String bookname=new String(sbooknamegetBytes("iso-8859-1"));

String sauthor=requestgetParameter("author");

String author=new String(sauthorgetBytes("iso-8859-1"));

String ssuppliername=requestgetParameter("suppliername");

String suppliername=new String(ssuppliernamegetBytes("iso-8859-1"));

String soutday=requestgetParameter("outday");

String outday=new String(soutdaygetBytes("iso-8859-1"));

String sprice=requestgetParameter("price");

String price=new String(spricegetBytes("iso-8859-1"));

String sstock=requestgetParameter("stock");

int stock=IntegerparseInt(sstock); //将字符转换为数字

String sfabu=requestgetParameter("selectfabu");

String fabu=new String(sfabugetBytes("iso-8859-1"));

String shotdeal=requestgetParameter("selecthotdeal");

String hotdeal=new String(shotdealgetBytes("iso-8859-1"));

String ssale=requestgetParameter("sale");

String sale=new String(ssalegetBytes("iso-8859-1"));

ClassforName("sunjdbcodbcJdbcOdbcDriver");

Connection con=DriverManagergetConnection("jdbc:odbc:booksystem");

Statement sql=concreateStatement();

ResultSet rs=sqlexecuteQuery("select from books where idbook='"+idbook+"'"); //按照idbook查询数据库

if(rsnext())

outprint("此书(图书编号:'"+idbook+"')已存在于数据库中,插入失败 !"+"<p>");

else

{

sqlexecuteUpdate("insert into books values('"+idbook+"','"+categoryname+"','"+bookname+"','"+author+"','"+suppliername+"','"+outday+"','"+price+"','"+stock+"','"+fabu+"','"+hotdeal+"','"+sale+"') "); //插入数据到数据库中

outprint("<strong>已将图书(图书编号:'"+idbook+"')录入数据库!</strong>"+"<p>");

}

rs=sqlexecuteQuery("select from books ");

outprint("数据库中的书目如下: ");

outprint("<table border>");

outprint("<tr>");

outprint("<th width=72>图书编号</td>");

outprint("<th width=72>图书类别</td>");

outprint("<th width=50>图书名称</td>");

outprint("<th width=50>作者</td>");

outprint("<th width=62>出 版 商</td>");

outprint("<th width=50>出版日期</td>");

outprint("<th width=50>售价</td>");

outprint("<th width=50>库存(本)</td>");

outprint("<th width=50>是否发布</td>");

outprint("<th width=50>是否热点书</td>");

outprint("<th width=50>出售(本)</td>");

outprint("</tr>");

while(rsnext())

{

String a,b,c,d,e,f,g,h,i,j,k; //这里将数据以表格形式输出

outprint("<tr>");

a=rsgetString(1);

outprint("<td>"+a+"</td>");

b=rsgetString(2);

outprint("<td>"+b+"</td>");

c=rsgetString(3);

outprint("<td>"+c+"</td>");

d=rsgetString(4);

outprint("<td>"+d+"</td>");

e=rsgetString(5);

outprint("<td>"+e+"</td>");

f=rsgetString(6);

outprint("<td>"+f+"</td>");

g=rsgetString(7);

outprint("<td>"+g+"</td>");

h=rsgetString(8);

outprint("<td>"+h+"</td>");

i=rsgetString(9);

outprint("<td>"+i+"</td>");

j=rsgetString(10);

outprint("<td>"+j+"</td>");

k=rsgetString(11);

outprint("<td>"+k+"</td>");

outprint("</tr>");

}

conclose();

%>

下面的代码即可实现(对数据库的 *** 作):

<%@ page

language="java"

contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"

%>

<%@page import="javasql"%>

<center>

<H1> <font color="blue" size="12">管理中心</font></H1>

<HR />

<table width="80%" border="1">

<tr>

<th>ID</th>

<th>书名</th>

<th>作者</th>

<th>价格</th>

<th>删除</th>

</tr>

<%

// 数据库的名字

String dbName = "zap";

// 登录数据库的用户名

String username = "sa";

// 登录数据库的密码

String password = "123";

// 数据库的IP地址,本机可以用 localhost 或者 127001

String host = "127001";

// 数据库的端口,一般不会修改,默认为1433

int port = 1433;

String connectionUrl = "jdbc:sqlserver://" + host + ":" + port + ";databaseName=" + dbName + ";user=" + username

+ ";password=" + password;

//

//声明需要使用的资源

// 数据库连接,记得用完了一定要关闭

Connection con = null;

// Statement 记得用完了一定要关闭

Statement stmt = null;

// 结果集,记得用完了一定要关闭

ResultSet rs = null;

try {

// 注册驱动

ClassforName("commicrosoftsqlserverjdbcSQLServerDriver");

// 获得一个数据库连接

con = DriverManagergetConnection(connectionUrl);

String SQL = "SELECT from note";

// 创建查询

stmt = concreateStatement();

// 执行查询,拿到结果集

rs = stmtexecuteQuery(SQL);

while (rsnext()) {

%>

<tr>

<td>

<%=rsgetInt(1)%>

</td>

<td>

<a href="prepareupdateID=<%=rsgetInt("ID")%>" target="_blank"><%=rsgetString(2)%></a>

</td>

<td>

<%=rsgetString(3)%>

</td>

<td>

<%=rsgetString(4)%>

</td>

<td>

<a href="deleteID=<%=rsgetInt("ID")%>" target="_blank">删除</a>

</td>

</tr>

<%

}

} catch (Exception e) {

// 捕获并显示异常

eprintStackTrace();

} finally {

// 关闭我们使用过的资源

if (rs != null)

try {

rsclose();

} catch (Exception e) {}

if (stmt != null)

try {

stmtclose();

} catch (Exception e) {}

if (con != null)

try {

conclose();

} catch (Exception e) {}

}

%>

</table>

<a href="insertjsp">添加新纪录</a>

</center>

Java读取数据库记录,并把读取到的数据现在是在jsp页面需要用到一下几种技术:

1,jdbc java连接数据库技术

2,Tomcat 运行jsp页面所需要的服务器

servlet 属于web主流在当前要求中,不使用。也可以达到相同效果

把数据库的数据保存在response、session、application,然后在页面使用struts标签、jsp标签等显示,或者用<%。

对于你的这个问题,建议你学一下系统的javaee体系,应为把数据读到页面不是那么简单的,需要jdbc链接数据库,需要一个tomcat服务器,需要数据库jar包、、、、、、

以上就是关于JSP如何连接数据库全部的内容,包括:JSP如何连接数据库、怎样将Excel文件导入数据库(在JSP环境下Java代码)、如何将数据库中查询到的数据 输出到jsp页面中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9866136.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存