从零开始,编写简单的课程信息管理系统(使用jsp+servlet+javabean架构)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了从零开始,编写简单的课程信息管理系统(使用jsp+servlet+javabean架构),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含29473字,纯文字阅读大概需要43分钟。
内容图文
一、相关的软件下载和环境配置
1、下载并配置JDK。
2、下载eclipse。
3、下载并配置apache-tomcat(服务器)。
4、下载MySQL(数据库)。
5、下载Navicat for MySQL(数据库可视化工具),方便对数据库的操作。
6、下载jdbc用来实现eclipse中的项目与数据库实现连接。
---以上可在网上查询教程
二、实现简单的课程信息管理系统
1、
打开eclipse,点击File—》New—》other—》Dynamic Web Project
(若你的eclipse中找不到或者没有Dynamic Web Project,可上网搜素解决办法)
点击后会出现如下窗口
需要填写Project name,可随意填写(最好是英文的),其他不需填写,填写完毕之后点击Finish
2、
项目建立完之后,eclipse左侧的Project Explorer会出现你建立的项目,如下图
3、
在我的电脑中,打开你下载的jdbc(也就是mysql-connector-java-8.0.13)所在的文件夹,如下图
将mysql-connector-java-8.0.13文件复制
粘贴在eclipse中,你所建立的项目下的 WebContent/WEB-INF/lib 文件夹下,如下图
然后,在你刚刚粘贴的文件上右击,Build Path—》Add to Build Path,如下图
这样就完成了jdbc的导入
4、
在 WebContent 文件夹下,新建如下图中的JSP文件,Login.jsp和signinerror.jsp是用来登陆的,这里不必建立。
4(1)head.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .headdiv { background-color : #3F51B5 ; width : 100% ; height : 130px ; } .headdiv P { font-family : YouYuan ; font-size : 20px ; color : #E8EAF6 ; position : relative ; left : 20px ; top : 45px ; } </ style > </ head > < body > < div class ="headdiv" > < p >ec-web课程信息综合管理平台</p></div></body></html>
4(2)left.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .leftMenu { background-color : #7986CB ; width : 250px ; height : 600px ; position : relative ; top : 0px ; } .menuParent { background-color : #BBDEFB ; } </ style > </ head > < body > < div class ="leftMenu" > < div class ="menu" > < div class ="menuParent" > < div class ="ListTitlePanel" > < div class ="ListTitle" > < strong >课程信息管理</strong><div class="leftbgbt"></div></div></div><div class="menuList"><div><a target="mainAction" href="USEJSP/add.jsp">课程信息录入</a></div><div><a target="mainAction" href="USEJSP/update.jsp">课程信息修改</a></div><div><a target="mainAction" href="USEJSP/delete.jsp">删除课程信息</a></div><div><a target="mainAction" href="USEJSP/search.jsp">查询课程信息</a></div></div></div></div></div><script type="text/javascript"></script></body></html>
4(3)index.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title ></ title > </ head > < body > 这是小主页 </ body > </ html >
4(4)main.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title >课程信息管理系统</title><style type="text/css"> .headframe{ width:100%; height:130px; border:0;} .leftframe{ float:left; width:250px; height:600px; border:0;} .mainframe{ float:right; width:1200px; height:600px; border:0;}</style></head><iframe src="head.jsp" class="headframe" scrolling="no"></iframe><iframe src="left.jsp" class="leftframe" scrolling="no"></iframe><iframe src="index.jsp" name="mainAction" class="mainframe"></iframe></html>
5、
在WebContent文件夹下建立名为USEJSP的文件夹,在USEJSP文件夹下,建立如下图的JSP文件
5(1)add.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .butn { display : inline-block ; padding : 8px 35px ; background-color : #32CD32 ; color : white ; border : none ; text-align : center ; text-decoration : none ; border-radius : 5px ; position : absolute ; left : 40px ; top : 95px ; } </ style > </ head > < body > < div class ="container" > < section > < form action ="${pageContext.request.contextPath}/AddServlet/AddCurrServlet?method=add" method ="post" onsubmit ="return check()" > <!-- -${pageContext.request.contextPath}的目的是找到主工程的名字,/Servlet/Userservlet就是web.xml下面配置的路径,也就是servlet的路径- --> < span class ="cname" >课程名称</span><input type="text" name="cname" class="icname" placeholder=" class-name" id="icname"><br/><span class="teacher">任课教师</span><input type="text" name="teacher" class="iteacher" placeholder=" teacher" id="iteacher"><br/><span class="place">上课地点</span><input type="text" name="place" class="iplace" placeholder=" place" id="iplace"><br/><input type="submit" value="保 存" class="butn"><br/></form></section></div><script type="text/javascript">function check() { var cname = document.getElementById("icname"); var teacher = document.getElementById("iteacher"); var place = document.getElementById("iplace"); var placestr = place.value.substring(0,2); //非空if(cname.value ==‘‘) { alert(‘课程名称为空‘); cname.focus(); returnfalse; } if(teacher.value ==‘‘) { alert(‘教师为空‘); teacher.focus(); returnfalse; } if(place.value ==‘‘) { alert(‘上课地点为空‘); place.focus(); returnfalse; } //教师if(teacher.value !=‘王建民‘&& teacher.value !=‘王辉‘&& teacher.value !=‘刘丹‘&& teacher.value !=‘刘立嘉‘&& teacher.value !=‘杨子光‘){ alert(‘教师名称错误‘); returnfalse; } //教室if(!/^基教/.test(placestr) &&!/^一教/.test(placestr) &&!/^二教/.test(placestr) &&!/^三教/.test(placestr)) { alert(‘上课地点错误‘); returnfalse; } returntrue; } </script></body></html>
5(2)addnameerror.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .butn { display : inline-block ; padding : 8px 35px ; background-color : #32CD32 ; color : white ; border : none ; text-align : center ; text-decoration : none ; border-radius : 5px ; position : absolute ; left : 40px ; top : 95px ; } </ style > </ head > < body onload ="alt()" > < div class ="container" > < section > < form action ="${pageContext.request.contextPath}/AddServlet/AddCurrServlet?method=add" method ="post" onsubmit ="return check()" > <!-- -${pageContext.request.contextPath}的目的是找到主工程的名字,/Servlet/Userservlet就是web.xml下面配置的路径,也就是servlet的路径- --> < span class ="cname" >课程名称</span><input type="text" name="cname" class="icname" placeholder=" class-name" id="icname"><br/><span class="teacher">任课教师</span><input type="text" name="teacher" class="iteacher" placeholder=" teacher" id="iteacher"><br/><span class="place">上课地点</span><input type="text" name="place" class="iplace" placeholder=" place" id="iplace"><br/><input type="submit" value="保 存" class="butn"><br/></form></section></div><script type="text/javascript">function check() { var cname = document.getElementById("icname"); var teacher = document.getElementById("iteacher"); var place = document.getElementById("iplace"); var placestr = place.value.substring(0,2); //非空if(cname.value ==‘‘) { alert(‘课程名称为空‘); cname.focus(); returnfalse; } if(teacher.value ==‘‘) { alert(‘教师为空‘); teacher.focus(); returnfalse; } if(place.value ==‘‘) { alert(‘上课地点为空‘); place.focus(); returnfalse; } //教师if(teacher.value !=‘王建民‘&& teacher.value !=‘王辉‘&& teacher.value !=‘刘丹‘&& teacher.value !=‘刘立嘉‘&& teacher.value !=‘杨子光‘){ alert(‘教师名称错误‘); returnfalse; } //教室if(!/^基教/.test(placestr) &&!/^一教/.test(placestr) &&!/^二教/.test(placestr) &&!/^三教/.test(placestr)) { alert(‘上课地点错误‘); returnfalse; } returntrue; } function alt() { alert(‘课程名称重复‘); } </script></body></html>
5(3)delete.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > <% @page import = " java.sql.* " %> <% @page import = " java.sql.Connection " %> <% @page import = " java.sql.Statement " %> <% @page import = " java.sql.ResultSet " %> <% @page import = " java.sql.DriverManager " %> <% @page import = " javax.servlet.http.HttpServletRequest " %> < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .butn { display : inline-block ; padding : 8px 35px ; background-color : #32CD32 ; color : white ; border : none ; text-align : center ; text-decoration : none ; border-radius : 5px ; position : absolute ; left : 40px ; top : 95px ; } </ style > </ head > < body > < div > < section > < form action ="${pageContext.request.contextPath}/DeleteServlet/DeleteCurrServlet?method=add" method ="post" onsubmit ="return check()" > < span class ="cname" >课程名称</span><input type="text" name="cname" id="icname" class="icname" placeholder=" class-name"><br/><input type="submit" value="删除" class="butn"><br/></form></section></div><script type="text/javascript">function check() { var cname = document.getElementById("icname"); //非空if(cname.value ==‘‘) { alert(‘课程名称为空,请重新输入‘); cname.focus(); returnfalse; } returntrue; } </script></body></html>
5(4)search.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > <% @page import = " java.sql.* " %> <% @page import = " java.sql.Connection " %> <% @page import = " java.sql.Statement " %> <% @page import = " java.sql.ResultSet " %> <% @page import = " java.sql.DriverManager " %> <% @page import = " javax.servlet.http.HttpServletRequest " %> < html > < head > < meta charset ="UTF-8" > < title ></ title > < style type ="text/css" > .butn { display : inline-block ; padding : 8px 35px ; background-color : #32CD32 ; color : white ; border : none ; text-align : center ; text-decoration : none ; border-radius : 5px ; position : absolute ; left : 40px ; top : 95px ; } </ style > </ head > < body > < div > < section > < form action ="${pageContext.request.contextPath}/SearchServlet/SearchCurrServlet?method=add" method ="post" > < span class ="cname" >课程名称</span><input type="text" name="cname" id="cname" class="icname" placeholder=" class-name"><br/><span class="teacher">任课教师</span><input type="text" name="teacher" id="teacher" class="iteacher" placeholder=" teacher"><br/><span class="place">上课地点</span><input type="text" name="place" id="place" class="iplace" placeholder=" place"><br/><input type="submit" value="查询" class="butn"><br/></form></section></div></body></html>
5(5)update.jsp
<% @ page language = " java " contentType = " text/html; charset=UTF-8 " pageEncoding = " UTF-8 " %> <! DOCTYPE html > <% @page import = " java.sql.* " %> <% @page import = " java.sql.Connection " %> <% @page import = " java.sql.Statement " %> <% @page import = " java.sql.ResultSet " %> <% @page import = " java.sql.DriverManager " %> < html > < head > < meta charset ="UTF-8" > < title ></ title > </ head > < body > < form action ="${pageContext.request.contextPath}/UpdateServlet/UpdateCurrServlet?method=update" method ="post" onsubmit ="return check()" > < span class ="cname" >需要修改的课程名称</span><input type="text" name="tempcname" class="itempcname" placeholder=" class-name" id="itempcname"><br/><table border="1" bgcolor="#ffffff" align="" cellspacing="1" cellpadding="1"><caption>输入修改信息</caption><tr><td align="center" width=16%>新课程名称</td><td align="center" width=16%>新任课教师</td><td align="center" width=25%>新上课地点</td><td align="center" width=16%>操作</td></tr><tr><td width=16% align="center"><input type="text" name="cname" class="icname" placeholder=" class-name" id="icname"></td><td width=16% align="center"><input type="text" name="teacher" class="iteacher" placeholder=" teacher" id="iteacher"></td><td width=25% align="center"><input type="text" name="place" class="iplace" placeholder=" place" id="iplace"></td><td width=16% align="center"><input type="submit" value="修 改" class="butn"></td></tr></table></form></body><script type="text/javascript">function check() { var ctempname = document.getElementById("itempcname"); var cname = document.getElementById("icname"); var teacher = document.getElementById("iteacher"); var place = document.getElementById("iplace"); var placestr = place.value.substring(0,2); //非空if(ctempname.value ==‘‘){ alert(‘需修改课程名称为空‘); teacher.focus(); returnfalse; } if(cname.value ==‘‘) { alert(‘课程名称为空‘); cname.focus(); returnfalse; } if(teacher.value ==‘‘) { alert(‘教师为空‘); teacher.focus(); returnfalse; } if(place.value ==‘‘) { alert(‘上课地点为空‘); place.focus(); returnfalse; } //教师if(teacher.value !=‘王建民‘&& teacher.value !=‘王辉‘&& teacher.value !=‘刘丹‘&& teacher.value !=‘刘立嘉‘&& teacher.value !=‘杨子光‘){ alert(‘教师名称错误‘); returnfalse; } //教室if(!/^基教/.test(placestr) &&!/^一教/.test(placestr) &&!/^二教/.test(placestr) &&!/^三教/.test(placestr)) { alert(‘上课地点错误‘); returnfalse; } returntrue; } </script></html>
6、
下面,生成web.xml文件(用来配置跳转路径)
在你的项目上右击,java EE Tool—》Generate Deployment Descriptor Stub
这样,在WebContent/WEB-INF文件夹下就生成了.xml文件,如下图
6(1)Web.xml
<? xml version="1.0" encoding="UTF-8" ?> < web-app xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xmlns ="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation ="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version ="3.0" > < display-name >curriculum_information_management_web</display-name><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list><servlet><servlet-name>Userservlet</servlet-name><!--servlet的别名,随便取 --><!--servlet的包路径,后面再加上.servlet类名 ,这里的类名必须是包下面的servlet类名,目的是让找到该servlet的路径 --><servlet-class>com.Servlet.Userservlet</servlet-class></servlet><servlet-mapping><servlet-name>Userservlet</servlet-name><!--servlet的别名,和上面保持一致就行 --><!--jsp跳转到servlet的路径名,自己取,用来从jsp界面跳转到servlet的路径,程序会根据路径找到servlet的位置 --><url-pattern>/Servlet/Userservlet</url-pattern><!----></servlet-mapping><servlet><servlet-name>AddCurrServlet</servlet-name><servlet-class>com.Servlet.AddCurrServlet</servlet-class></servlet><servlet-mapping><servlet-name>AddCurrServlet</servlet-name><url-pattern>/AddServlet/AddCurrServlet</url-pattern><!----></servlet-mapping><servlet><servlet-name>SearchCurrServlet</servlet-name><servlet-class>com.Servlet.SearchCurrServlet</servlet-class></servlet><servlet-mapping><servlet-name>SearchCurrServlet</servlet-name><url-pattern>/SearchServlet/SearchCurrServlet</url-pattern><!----></servlet-mapping><servlet><servlet-name>DeleteCurrServlet</servlet-name><servlet-class>com.Servlet.DeleteCurrServlet</servlet-class></servlet><servlet-mapping><servlet-name>DeleteCurrServlet</servlet-name><url-pattern>/DeleteServlet/DeleteCurrServlet</url-pattern><!----></servlet-mapping><servlet><servlet-name>UpdateCurrServlet</servlet-name><servlet-class>com.Servlet.UpdateCurrServlet</servlet-class></servlet><servlet-mapping><servlet-name>UpdateCurrServlet</servlet-name><url-pattern>/UpdateServlet/UpdateCurrServlet</url-pattern><!----></servlet-mapping></web-app>
7、
在项目下的 Java Resources/src 建立包,如下图
然后,在各包下建立类,如图
7(1)com.Bean
建立CurrBean.java文件
package com.Bean; public class CurrBean { private String name; private String teacher; private String place; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTeacher() { return teacher; } publicvoid setTeacher(String teacher) { this.teacher = teacher; } public String getPlace() { return place; } publicvoid setPlace(String place) { this.place = place; } }
7(2)com.Dao(该包中的类是用来登录操作的,在这里只是写出来,不用实现)
建立Userdao.java文件
package com.Dao; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import com.DBUtil.*; publicclass Userdao { publicint login(String username,String password) { Connection conn = DBUtil.getConn();//这里就是从DBUtil类里面得到连接 Statement state =null; ResultSet rs = null; int flag=0; try { String sql = "select * from admin";//SQL语句 state = conn.createStatement(); rs=state.executeQuery(sql); while(rs.next()) { if(rs.getString("password").equals(password)&&rs.getString("username").equals(username)) { flag=1; } } } catch(Exception e) { e.printStackTrace(); } finally { DBUtil.close(rs, state, conn); } return flag; } }
7(3)com.DBUtil
建立CurrDBUtil.java文件(链接数据库)
package com.DBUtil; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class CurrDBUtil { public static String db_url="jdbc:mysql://localhost:3306/curriculum?useSSL=true&serverTimezone=UTC"; //这是连接数据库,userdome是数据库的名称,userUnicode=true&characterEncoding=UTF-8是将字符集设置为utf-8,避免乱码。publicstatic String db_user="root";//数据的用户名publicstatic String db_password="lty";//数据库的密码publicstatic Connection getConn()//获取连接,返回Connection类型,必须设置为static这样才能在其他类中使用 { Connection conn=null; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 conn=DriverManager.getConnection(db_url,db_user,db_password);//连接数据库 } catch(Exception e) { e.printStackTrace(); } return conn; } publicstaticvoid close(Statement state,Connection conn)//关闭函数 { if(state!=null)//只有状态和连接时,先关闭状态 { try { state.close(); } catch(SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch(SQLException e) { e.printStackTrace(); } } } publicstaticvoid close(ResultSet rs,Statement state,Connection conn) { if(rs!=null)//有结果集,状态和连接时,先关闭结果集,在关闭状态,在关闭连接 { try { rs.close(); } catch(SQLException e) { e.printStackTrace(); } } if(state!=null) { try { state.close(); } catch(SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch(SQLException e) { e.printStackTrace(); } } } }
建立DBUtil.java文件(用来链接登录数据库,不必实现)
package com.DBUtil; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class DBUtil { public static String db_url="jdbc:mysql://localhost:3306/userdome?useSSL=true&serverTimezone=UTC"; //这是连接数据库,userdome是数据库的名称,userUnicode=true&characterEncoding=UTF-8是将字符集设置为utf-8,避免乱码。publicstatic String db_user="root";//数据的用户名publicstatic String db_password="lty100609";//数据库的密码publicstatic Connection getConn()//获取连接,返回Connection类型,必须设置为static这样才能在其他类中使用 { Connection conn=null; try { Class.forName("com.mysql.jdbc.Driver");//加载驱动 conn=DriverManager.getConnection(db_url,db_user,db_password);//连接数据库 } catch(Exception e) { e.printStackTrace(); } return conn; } publicstaticvoid close(Statement state,Connection conn)//关闭函数 { if(state!=null)//只有状态和连接时,先关闭状态 { try { state.close(); } catch(SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch(SQLException e) { e.printStackTrace(); } } } publicstaticvoid close(ResultSet rs,Statement state,Connection conn) { if(rs!=null)//有结果集,状态和连接时,先关闭结果集,在关闭状态,在关闭连接 { try { rs.close(); } catch(SQLException e) { e.printStackTrace(); } } if(state!=null) { try { state.close(); } catch(SQLException e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch(SQLException e) { e.printStackTrace(); } } } }
7(4)com.Servlet
AddCurrServlet.java 实现课程的增加
package com.Servlet; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.Bean.CurrBean; import com.DBUtil.*; publicclass AddCurrServlet extends HttpServlet { privatestaticfinallong serialVersionUID = 1L; protectedvoid doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{ resp.setContentType("add.jsp"); req.setCharacterEncoding("UTF-8"); String name; String teacher; String place; name = req.getParameter("cname"); teacher = req.getParameter("teacher"); place = req.getParameter("place"); CurrBean currbean = new CurrBean(); currbean.setName(name); currbean.setTeacher(teacher); currbean.setPlace(place); AddCurrInterface addCurrInterface = new AddCurrInterface(); @SuppressWarnings("unused") int temp = 0; try { temp = addCurrInterface.addUser(currbean); if(temp == 1) { resp.sendRedirect(req.getContextPath()+"/index.jsp"); }elseif(temp == 2) { resp.sendRedirect(req.getContextPath()+"/USEJSP/addnameerror.jsp"); } } catch (SQLException e) { e.printStackTrace(); } } } class AddCurrInterface extends HttpServlet{ privatestaticfinallong serialVersionUID = 1L; publicint addUser(CurrBean cb) throws SQLException { String name; String teacher; String place; name = cb.getName(); teacher = cb.getTeacher(); place = cb.getPlace(); //连接数据库 Connection conn = CurrDBUtil.getConn(); PreparedStatement pstmt = null; Statement stmt = conn.createStatement(); String selectsql = "select * from curr_info"; ResultSet rs = stmt.executeQuery(selectsql); int tt = 0; while(rs.next()) { if(rs.getString("name").equals(name)) { tt = 2; } } if(tt == 0) { String sql = "insert into curr_info (name,teacher,place) values (?,?,?)";//数据库指令 pstmt = conn.prepareStatement(sql);//发送sql语句 //下面是插入到具体的地方 pstmt.setString(1, name); pstmt.setString(2, teacher); pstmt.setString(3, place); pstmt.executeUpdate(); System.out.println("添加成功!"); return 1; }elseif(tt == 2) { return 2; } return 0; } }
DeleteCurrServlet.java 实现课程的删除
package com.Servlet; import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.DBUtil.CurrDBUtil; public class DeleteCurrServlet extends HttpServlet { privatestaticfinallong serialVersionUID = 1L; protectedvoid doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{ resp.setContentType("delete.jsp"); req.setCharacterEncoding("UTF-8"); String name; @SuppressWarnings("unused") int ii = 0; name = req.getParameter("cname"); //连接数据库 Connection conn = CurrDBUtil.getConn(); try { Statement stmt = conn.createStatement(); String selectsql = "select * from curr_info"; ResultSet rs = stmt.executeQuery(selectsql); while(rs.next()) { if(rs.getString("name").equals(name)) { ii = rs.getInt("id"); //Get output stream and writers OutputStream out=resp.getOutputStream(); PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(out))); //Print HTML pw.println("<HTML><HEAD><TITLE>输出HTML标签</HEAD></TITLE><BODY>"); pw.println("<table border=\"1\" bgcolor=\"#ffffff\" align=\"\" cellspacing=\"1\" cellpadding=\"1\">"); pw.println("<tr>\r\n" + "<td align=\"center\" width=16%>课程名称</td>\r\n" + "<td align=\"center\" width=16%>任课教师</td>\r\n" + "<td align=\"center\" width=35%>上课地点</td>\r\n" + "</tr>"); pw.println("<tr>\r\n" + "<td width=16% align=\"center\">"+rs.getString("name")+"</td>\r\n" + "<td width=16% align=\"center\">"+rs.getString("teacher")+"</td>\r\n" + "<td width=35% align=\"center\">"+rs.getString("place")+"</td>\r\n" + "</tr>"); pw.println("该课程已删除!"); pw.println("</BODY></HTML>"); pw.flush(); pw.close(); } } String delesql="delete from curr_info where name=‘"+name+"‘ ";//生成一条sql语句 stmt.executeUpdate(delesql);//执行sql语句 } catch (SQLException e) { e.printStackTrace(); } } }
SearchCurrServlet.java 实现课程的查询
package com.Servlet; import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.DBUtil.CurrDBUtil; public class SearchCurrServlet extends HttpServlet { privatestaticfinallong serialVersionUID = 1L; protectedvoid doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{ resp.setContentType("search.jsp"); req.setCharacterEncoding("UTF-8"); String name; String teacher; String place; name = req.getParameter("cname"); teacher = req.getParameter("teacher"); place = req.getParameter("place"); int temp = 0; //连接数据库 Connection conn = CurrDBUtil.getConn(); try { Statement stmt = conn.createStatement(); String selectsql = "select * from curr_info"; ResultSet rs = stmt.executeQuery(selectsql); //Get output stream and writers OutputStream out=resp.getOutputStream(); PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(out))); //Print HTML pw.println("<HTML><HEAD><TITLE>输出HTML标签</HEAD></TITLE><BODY>"); pw.println("<table border=\"1\" bgcolor=\"#ffffff\" align=\"\" cellspacing=\"1\" cellpadding=\"1\">"); pw.println("<tr>\r\n" + "<td align=\"center\" width=16%>课程名称</td>\r\n" + "<td align=\"center\" width=16%>任课教师</td>\r\n" + "<td align=\"center\" width=35%>上课地点</td>\r\n" + "</tr>"); while(rs.next()) { if(rs.getString("name").equals(name) || rs.getString("teacher").equals(teacher) || rs.getString("place").equals(place)) { pw.println("<tr>\r\n" + "<td width=16% align=\"center\">"+rs.getString("name")+"</td>\r\n" + "<td width=16% align=\"center\">"+rs.getString("teacher")+"</td>\r\n" + "<td width=35% align=\"center\">"+rs.getString("place")+"</td>\r\n" + "</tr>"); temp++; } /* else { //Get output stream and writers OutputStream out=resp.getOutputStream(); PrintWriter pw=new PrintWriter(new BufferedWriter(new OutputStreamWriter(out))); //Print HTML pw.println("<HTML><HEAD><TITLE>输出HTML标签</HEAD></TITLE><BODY>"); pw.println("查询错误!"); pw.println("</BODY></HTML>"); pw.flush(); pw.close(); } */ } if(temp == 0) { pw.println("查询错误!"); } pw.println("</BODY></HTML>"); pw.flush(); pw.close(); } catch (SQLException e) { e.printStackTrace(); } } }
UpdateCurrServlet.java 实现课程的修改
package com.Servlet; import java.io.IOException; import java.sql.Connection; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.DBUtil.CurrDBUtil; public class UpdateCurrServlet extends HttpServlet { privatestaticfinallong serialVersionUID = 1L; protectedvoid doPost(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException{ resp.setContentType("update.jsp"); req.setCharacterEncoding("UTF-8"); String tempname; String name; String teacher; String place; tempname = req.getParameter("tempcname"); name = req.getParameter("cname"); teacher = req.getParameter("teacher"); place = req.getParameter("place"); //连接数据库 Connection conn = CurrDBUtil.getConn(); try { Statement stmt = conn.createStatement(); String updatesql = "update curr_info set name=‘"+name+"‘,teacher=‘"+teacher+"‘,place=‘"+place+"‘ where name=‘"+tempname+"‘"; stmt.executeUpdate(updatesql);//执行sql语句 resp.sendRedirect(req.getContextPath()+"/index.jsp"); } catch (SQLException e) { e.printStackTrace(); } } }
原文:https://www.cnblogs.com/leity/p/10090498.html
内容总结
以上是互联网集市为您收集整理的从零开始,编写简单的课程信息管理系统(使用jsp+servlet+javabean架构)全部内容,希望文章能够帮你解决从零开始,编写简单的课程信息管理系统(使用jsp+servlet+javabean架构)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。