笔记:
一、绑定
1、所谓的绑定数据就是相关的查询语句
//jdbc连接数据库
//jdbc连接Oracle查询所有的新闻:新闻id 新闻
String CNAME="oracle.jdbc.driver.OracleDriver"; String URL="jdbc:oracle:thin:@localhost:1521:orcl";
//加载驱动
Class.forName(CNAME);
//创建连接
Connection con=DriverManager.getConnection(URL, "scott", "tiger");
//定义sql语句
String sql="select * from topic280;
2、以上为例子:数据库表名为topic280,做完基本的jdbc后我们就要执行和插入执行的数据
//获得执行对象
PreparedStatement ps=con.prepareStatement(sql);
//获得结果集
ResultSet rs=ps.executeQuery();
//循环遍历
while(rs.next()){
%>
<a href='/s5/news/yk.jsp?tid=<%=rs.getInt(1) %>'><b><%=rs.getString(2) %></b></a>
<%
}
%>
3、直接把查询的值嵌套在a标签里面
二、删除
1、删除也就是要根据所点击id进行删除
当用户点击删除按钮时,就要弹出询问对话框询问用户是否要进行删除
注意:在返回界面的时候一定要把独立的编号传回去
三、修改
1.修改就复杂点了,首页当用户点击修改的时候我们要把用户所点击的相关内容全部传过去,其次就是当修改成功后放回首页要传独立id,修改失败则也要把id传到当前页面
//设置编码方式
request.setCharacterEncoding("utf-8");
//接收表单提交过来的值
String nid=request.getParameter("nid");
String ntid=request.getParameter("ntid");
String ntitle=request.getParameter("ntitle");
String nauthor=request.getParameter("nauthor");
String nsummary=request.getParameter("nsummary");
String ncontent=request.getParameter("ncontent");
String naddtime=new Date().toLocaleString();//取系统当前时间
String URL="jdbc:oracle:thin:@localhost:1521:orcl";
String CNAME="oracle.jdbc.driver.OracleDriver";
Class.forName(CNAME);
Connection con=DriverManager.getConnection(URL, "scott", "tiger");
//执行sql语句
String sql="update news280 set tid=?,ntitle=?,nauthor=?,nsummary=?,ncontent=?,naddtime=? where nid=?";
//实现修改
PreparedStatement ps=con.prepareStatement(sql);
//给占位符赋值
ps.setInt(1, Integer.parseInt(ntid));
ps.setString(2, ntitle);
ps.setString(3, nauthor);
ps.setString(4, nsummary);
ps.setString(5, ncontent);
ps.setString(6, naddtime);
ps.setInt(7, Integer.parseInt(nid));
//获得影响行数
int n=ps.executeUpdate();
//关闭资源
if(con!=null&&!con.isClosed()){
con.close();
}
if(ps!=null){
ps.close();
}
//做判断
if(n>0){//说明修改成功
//新闻主界面
response.sendRedirect("/s5/news/admin.jsp");
}
else{//说明修改失败
out.print("<script>alert('修改失败');location.href='update.jsp?nid="+nid+"';</script>");
}