JavaBean:用于传递数据,拥有与数据相关的逻辑处理
JSP:从Model接收数据并生成HTML
Servlet:接收HTTP请求并控制Model和View
jdbc:用于配置环境
一、【建立数据库】
在mysql中新建一个名为kecheng的数据库,并在其中新建一个kecheng数据表,包含三个字段,classname,classroom,teacher
二、【新建web项目】
1. eclipse新建一个名为kechengguanlli的Dynamic Web Project
修改class的默认输出目录为:WebContent/WEB-INF/classes,勾选自动生成web.xml
2. 将连接mysql的驱动jar包(mysql-connector-java-5.1.7-bin.jar)copy到WEB-INF下的lib目录下
3. 新建7个包
helper、链接数据库的操作,避免重复写代码,所以用一个包封装起来
SQL、数据库增删改查的统一代码,在实例中具体调用
javabean、基类,包括此项目中的成员变量
servlet、增加数据库中课程
servletdelete、删除数据库中课程
servletseclec、查询数据库中课程
servletupdate、修改数据库中课程
4. 新建类(最愉快的搬砖环节 -.-),java类放在对应包中,jsp页面放在WebContent目录下,替换web.xml中内容;
helper包下新建 DbHelper.java
package helper;
import java.sql.Connection;
import java.sql.DriverManager;
public class DbHelper {
private static String url = "jdbc:mysql://localhost:3306/kecheng"; //数据库地址
private static String userName = "root"; //数据库用户名
private static String passWord = "199812"; //数据库密码
private static Connection conn = null;
private DbHelper(){
}
public static Connection getConnection(){
if(null == conn){
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(url, userName, passWord);
} catch (Exception e) {
e.printStackTrace();
}
}
return conn;
}
public static void main(String[] args) { //测试数据库是否连通
System.out.println(getConnection());
}
}
javabean包下新建kecheng.java
package javabean;
public class kecheng {
private String classname;
private String teacher;
private String classroom;
private String fanhui;
public kecheng()
{}
public String getClassname() {
return classname;
}
public void setClassname(String classname) {
this.classname = classname;
}
public String getTeacher() {
return teacher;
}
public void setTeacher(String teacher) {
this.teacher = teacher;
}
public String getClassroom() {
return classroom;
}
public void setClassroom(String classroom) {
this.classroom = classroom;
}
public String getFanhui() {
return fanhui;
}
public void setFanhui(String fanhui) {
this.fanhui = fanhui;
}
}
servlet包下新建add.java
package servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javabean.kecheng;
import javabean.kecheng;
import SQL.sqlclass;
/**
* Servlet implementation class add
*/
@WebServlet("/add")
public class add extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public add() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
int i=0,j=1,k=0;
response.getWriter().append("Served at: ").append(request.getContextPath());
String classname=request.getParameter("classname");//防止中文乱码
String teacher=request.getParameter("teacher");
String classroom=request.getParameter("classroom");
if(teacher.equals("王建民")||teacher.equals("刘立嘉")||teacher.equals("刘丹")||teacher.equals("王辉")||teacher.equals("杨子光"))
i=1;
String name;
name=classroom.substring(0,2);
if(name.equals("一教")||name.equals("二教")||name.equals("三教")||name.equals("基教"))
j=1;
if(true)//课程名
k=1;
if(i==1&&j==1&&k==1)
{ kecheng student=new kecheng();
student.setClassname(classname);
student.setTeacher(teacher);
student.setClassroom(classroom);
sqlclass sql=new sqlclass();
sql.addUser(student);
response.sendRedirect("first.jsp");//页面跳转
}
else response.sendRedirect("add.jsp");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
【 jsp页面放在WebContent目录下】
first.jsp
pageEncoding="UTF-8"%>
Insert title hereadd.jsp
pageEncoding="UTF-8"%>
Insert title heredelete.jsp
pageEncoding="UTF-8"%>
Insert title hereselect.jsp
pageEncoding="UTF-8"%>
Insert title heresqlclass a=new sqlclass();
a.getAllUser();
kecheng c=new kecheng();
List b= new ArrayList();
b=a.getAllUser();
int i=0;
int j=0;
j=a.getnum();
for(;i
{c=b.get(i);
%>
update.jsp
pageEncoding="UTF-8"%>
Insert title here【替换web.xml中内容】
kechengguanli
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
servlet
servlet.add
servlet
/servlet.add
servletdelete
servletdelete.delete
servletdelete
/servletdelete.delete
servletupdate
servletupdate.update
servletupdate
/servletupdate.update