📄 transaction.jsp
字号:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*"
errorPage="" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
…
<body>
<p>
<%
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=my_db;
SelectMethod=Cursor";
//my_db为你的数据库的名称
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt1 = conn.createStatement();
try{
String sql1="insert into stu_info (id,name,sex,age) values(13,'张建','M',19) ";
String sql2="insert into stu_score(id,name,subject,score) values(13,'张建','english',95) ";
conn.setAutoCommit(false);//禁止自动提交,设置回滚点
stmt1.executeUpdate(sql1);
stmt1.executeUpdate(sql2);
conn.commit();//提交事务
conn.setAutoCommit(true);// 恢复JDBC事务的默认提交方式
out.println("事务操作成功!");
}catch(Exception ex) {
ex.printStackTrace();
try {
conn.rollback(); //操作不成功则回滚
}catch(Exception e) {
e.printStackTrace();
}
}
%>
</p>
<p align="center" class="style1">使用事务操作</p>
<table align="center" border="1">
…
<%
Statement stmt2=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.
CONCUR_UPDATABLE);
String sql3="select stu_info.id,stu_info.name,sex,age,subject,score from stu_info,stu_score
where stu_info. id=stu_score. id";//查询刚才插入的数据
ResultSet rs=stmt2.executeQuery(sql3);
while(rs.next()) {%>
<tr>
<td><%=rs.getString("id")%> </td>
<td><%=rs.getString("name")%></td>
<td><%=rs.getString("sex")%></td>
<td><%=rs.getString("age")%> </td>
<td><%=rs.getString("subject")%> </td>
<td><%=rs.getString("score")%> </td>
</tr>
<%}%>
<%rs.close();
stmt1.close();
stmt2.close();
conn.close();
%>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -