创建环境:eclipse+maven+tomcat+mysql
一:在eclipse下一次点击file-->new-->other-->maven-->maven project-->
如下图:勾选前两项
点击next,页面如下所示:
Group id 和Artifact id 自己设定,Packaging将jar改为war,点击Finish,完成第一步。
二:新生成的web 项目会自动生成一个pom.xml文件,没有配置的,直接用下面的代码替换里面的代码:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.nc</groupId>
<artifactId>crm</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<properties>
<!-- 统一源码的编码方式 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- 统一各个框架版本 -->
<struts.version>2.5.10</struts.version>
<spring.version>4.3.8.RELEASE</spring.version>
<hibernate.version>5.1.7.Final</hibernate.version>
</properties>
<dependencies>
<!--使用jsp的时候-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<!--使用jsp的时候-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<!-- Junit依赖 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- Spring 核心依赖 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring web依赖 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring整合ORM框架依赖 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Struts2 核心依赖 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>${struts.version}</version>
</dependency>
<!-- Struts2和Spring整合依赖 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>${struts.version}</version>
</dependency>
<!-- Hibernate 核心依赖 -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>${hibernate.version}</version>
</dependency>
<!-- MySQL 依赖 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.42</version>
</dependency>
<!-- C3P0 依赖 -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5</version>
</dependency>
<!-- AspectJ依赖 -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.10</version>
</dependency>
<!-- SLF4J依赖 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.25</version>
</dependency>
</dependencies>
<build>
<finalName>crm</finalName>
<pluginManagement>
<plugins> <!-- ctrl+shirt+/ -->
<!-- 打包时跳过单元测试 -->
<!-- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin> -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<showWarnings>true</showWarnings>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId> tomcat7-maven-plugin</artifactId>
<configuration>
<path>/</path>
<port>8090</port>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
然后点击webapp,在里面创建一个WEB-INF文件夹,在其中新建一个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_2_5.xsd" version="2.5">
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>cn.nc.web.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/loginServlet</url-pattern>
</servlet-mapping>
</web-app>
好了,现在基本配置已经完成,现在来编写代码了。
三:首先编写一个网页的登陆界面的代码,命名为login.jsp:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>登录</title>
</head>
<body>
<form action="/loginServlet" method="get">
姓名:<input type="text" name="name"/><br>
密码:<input type="password" name="pwd"/></br>
登录:<input type="submit" name="提交"/>
</form>
</body>
</html>
在创建一个实体类User:
package cn.nc.bean;
import java.io.Serializable;
public class User implements Serializable {
private Integer id;
private String name;
private String pwd;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public User(){
}
public User(String name, String pwd) {
super();
this.name = name;
this.pwd = pwd;
}
}
然后在mysql里
创建数据库:
create database logindb;
创建表
create table t_login(
id int not null,
name varchar(200),
pwd varchar(20));
插入几条数据
insert into t_login values(1,'jimmy','123456');
insert into t_login values(1,'john','123456');
四:创建一个Jdbcutils类:
package cn.nc.utils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JdbcUtils {
/**
* 创建jdbc的连接
* @return
*/
public static Connection getConnection(){
try{
Class.forName("org.gjt.mm.mysql.Driver");
return DriverManager.getConnection("jdbc:mysql://localhost:3306/logindb","root","123456");
}catch(Exception e){
e.printStackTrace();
throw new RuntimeException("创建连接失败");
}
}
/**
* 释放相应的资源
*/
public void release(ResultSet rs ,Connection conn,PreparedStatement pstmt){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstmt!=null){
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
五:连接数据库,创建一个UserDao类,用于操纵数据库:
package cn.nc.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import cn.nc.bean.User;
import cn.nc.utils.JdbcUtils;
public class UserDao {
public boolean isExist(User user){
Connection connection =null;
PreparedStatement pstmt = null;
ResultSet rs =null;
try{
//��ȡconnection
connection = JdbcUtils.getConnection();
//����sql���
String sql ="select * from t_login where name=? and pwd =?";
pstmt = connection.prepareStatement(sql);
pstmt.setString(1,user.getName());
pstmt.setString(2,user.getPwd());
rs = pstmt.executeQuery();
if(rs.next()){
return true;
}else{
return false;
}
}catch(Exception e){
throw new RuntimeException(e);
}
}
}
六:创建一个loginservlet类,用于逻辑处理:
package cn.nc.web.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.nc.bean.User;
import cn.nc.dao.UserDao;
public class LoginServlet extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{
UserDao userDao = new UserDao();
//���е�name
String name = request.getParameter("name");
//���е�pwd
String pwd = request.getParameter("pwd");
User user = new User(name,pwd);
boolean exist = userDao.isExist(user);
//�����ѯ�������и��û�
if(exist){
//ҳ����ת��main.jsp
request.getRequestDispatcher("/main.jsp").forward(request,response);
}else{
//����,ҳ�治��ת
request.getRequestDispatcher("/login.jsp").forward(request,response);
}
}
// public void dPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{
// this.doGet(request, response);
// }
//
}
七:创建一个main.jsp页面,也就是跳转界面:
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>登录成功啦</title>
</head>
<body>
恭喜你,啦啦啦啦啦
</body>
</html>
八:所有代码已经打完,现在我们来测试下这个界面:
点击pom.xml-->run as-->Maven build-->tomcat7:run
出现以下信息,说明运行成功:
八:在浏览器下输入http://localhost:8090/login.jsp
运行如下所示:
输入数据库创建的正确的用户名和密码:
点击提交:出现以下界面:
那么,恭喜你,已经成功。