点击查看
目录
三、创建Java EE项目
新建一个项目
点击【next】
点击【Finish】按钮,MyEclipse会自动生成一个Java EE项目。
四、创建JDBC类
在项目中新建一个包,右击项目中src文件夹,选择【New】-【Package】
在包org.db中新建一个Class
编写DBConn.java,代码如下
package org.db;
import java.sql.*;
public class DBConn {
public static Connection conn;//Connection对象连接;
//获取数据库连接
public static Connection getConn(){
try{
/**加载并注册SQL Server2014的JDBC驱动*/
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
/**编写连接字符串,创建并获取连接*/
conn=DriverManager.getConnection("jdac:sqlserver://localhost:1433;"
+ "databaseName=MBOOK","sa","123456");
return conn;
}
catch(Exception e){
e.printStackTrace();
return null;
}
}
public static void CloseConn(){
try{
conn.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
注意:conn=DriverManager.getConnection("jdac:sqlserver://localhost:1433;databaseName=MBOOK","sa","123456");中的"123456"要换成自己数据库的密码!
五、添加JDBC驱动包
将sqljdbc4.jar添加到项目的"\\WebRoot\lib"目录下
刷新一下就可以看到
六、编写JSP
本例需要写3个JSP文件:login.jsp(登录页)、main.jsp(欢迎主页)、error.jsp(出错处理页)
在WebRoot项,右键【new】-【file】
login.jsp代码如下
<%@page language="java" pageEncoding="gb2312"%>
<html>
<head>
<title>图书管理系统</title>
</head>
<body bgcolor="#71CABF">
<form action="loginServlet" method="post">
<!--action="loginServlet"表示在用户单击“登录”按钮后,-->
<!--页面提交给一个名为loginServlet的Servlet作进一步处理-->
<table>
<caption>用户登录</caption>
<tr>
<td>登录名</td>
<td><input name="name" type="text" size="20" /></td>
</tr>
<tr>
<td>密码</td>
<td><input name="password" type="password" size="21" /></td>
</tr>
</table>
<input type="submit" value="登录" /> <input type="reset" value="重置" />
</form>
</body>
</html>
main.jsp代码如下
<%@page language="java" pageEncoding="gb2312" import="org.model.Login"%>
<html>
<head>
<title>欢迎使用</title>
</head>
<body>
<%
Login login=(Login)session.getAttribute("login");
String lgn=login.getName();
%>
<%=lgn %>,您好!欢迎使用图书管理系统。
</body>
</html>
这里import="org.model.Login"会报错,别着急,是因为我们还没有编写org.model包下的login.java
erro.jsp代码如下
<%@ page language="java" pageEncoding="gb2312"%>
<html>
<head>
<title>出错</title>
</head>
<body>
登录失败!单击<a href="login.jsp">这里</a>返回
</body>
</html>
七、编写Servlet
在src下新建一个包org.servlet
在此包下创建一个类LoginServlet
LoginServelt.java代码如下
package org.servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.dao.*;
import org.model.*;
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("gb2312");// 设置请求编码
// 该类位项目与数据的接口(DAO接口),用于处理数据与数据库表的一些操作
LoginDao loginDao = new LoginDao();
Login l = loginDao.checkLogin(request.getParameter("name"), request.getParameter("password"));
if (l != null) {// 如果登录成功
HttpSession session = request.getSession();// 获得会话,用来保存当前登录用户的信息
session.setAttribute("login", l);// 把获得的对象保存在Session中
response.sendRedirect("main.jsp");//验证成功跳转到欢迎主页main.jsp
}
else{
response.sendRedirect("error.jsp");
}
}
public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
doGet(request,response);
}
}
八、配置Servlet
打开WebRoot文件夹下WEB-INF中的web.xml
点击左下方的Source按钮即可查看修改代码
web.xml内容如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>org.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping>
<display-name>bookManage</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>
</web-app>
九、构造JavaBean
在src下建立包org.model,其中创建名为Login的Java类,代码如下
package org.model;
public class Login {
// 属性
private Integer id;
private String name;
private String password;
private boolean role;
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return this.password;
}
public void setPassword(String password) {
this.password = password;
}
public boolean isRole() {
return this.role;
}
public void setRole(boolean role) {
this.role = role;
}
}
十、实现DAO
在src下建立org.dao包,在包中创建LoginDao类,代码如下
package org.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import org.db.DBConn;
import org.model.Login;
public class LoginDao {
Connection conn;//数据库连接对象
public Login checkLogin(String name, String password) {
try {
conn = DBConn.getConn();//获取连接对象
PreparedStatement pstmt = conn.prepareStatement("select * from[login] where name=?" + "and password=?");
pstmt.setString(1, name);//设置sql语句参数1
pstmt.setString(2, password);//设置sql语句参数2
ResultSet rs = pstmt.executeQuery();//执行查询,返回结果集
if (rs.next()) {
Login login = new Login();//通过JavaBean对象保存值
login.setId(rs.getInt(1));
login.setName(rs.getString(2));
login.setPassword(rs.getString(3));
login.setRole(rs.getBoolean(4));
return login;
}
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
DBConn.CloseConn();// 关闭连接
}
}
}
十一、部署Java EE项目
单击工具栏上的【Manage Deployments..】
点击【add】
以上界面位配置成功
十二、运行浏览
先看一下端口号是8080还是8081(一般是8080,部分用户自己修改过的可能是8081)
笔者是改过的所以使用的端口号为8081
在浏览器输入http://localhost:8081/bookManage即可访问页面
一个小插曲
笔者在此处遇到了一个小问题
直接访问项目出现404
但直接访问jsp页面则正常显示
此问题待解决