JavaWeb入门先从登录注册系统开始做起.
我的这个入门教程特别简单大家按步骤做就行一定没有问题的!源码在下面一个字不少大家认真仔细学
1、需要预先了解的几个基本概念,JSP文件和HTML文件还有XML文件,还有如何创建一个WEB项目。这些东西都是百度可以查到的基本知识。
2、准备工作就是配置好JAVA运行环境和Tomcat运行环境。
3、建立一个JavaWeb项目,随便在一个项目上右键new 选择Ohter
然后新建一个Dynamic Web Project项目
这个就是JAVAWeb项目了。准备工作完成,现在开始制作项目
这里主要用java Resources文件夹还有WebContent文件夹。
在java Resources文件夹的src下面放一些java文件一般是javaben 或者放Servlet。然后WebContent下面的放html文件或者jsp文件一些前端文件。
我们的登陆注册系统 网页页面就放在WebContent下面,我们的验证账号密码是否正确还有添加新账号的这些功能代码就放在JavaResources 下面的SRC 下面 ,大概图像如下:
大家看见了吧。
然后大家就开始编写 前台html代码和后台操作代码:
比如一个简单的前台页面
建立一个login.jsp 放在WebContent下面,源码如下
比较重要的几个点我都画了起来比如 编码格式必须要换! 然后就是 action这个服务器名 就是一个会要提交的服务器 对你数据进行加工处理返回结果的东西, method是提交方式 post比较好。
效果图:
然后还有一个注册界面,再建立一个register.jsp文件
比较重要的几个点我就画出来了,记得不要出错!
运行效果图:
这样登录注册系统前台就写完了 三分之一完成!
然后开始写 后台代码功能代码!
先建立一个 RegisterServlet.java 说的好听点就是注册的服务器 处理注册界面上传的账号密码 存到数据库里面。
再建立一个 DbUtil .java 链接数据库用的!这是一个工具包 专门用来连接数据库用 代码如下 用之前记得把mysql的jar包导入到项目里面
import java.sql.Connection;
import java.sql.DriverManager;
public class DbUtil {
/**
*
* @DbUtil类的作用 jdbc 的一些简单配置
* dbUrl
* dbusername
* dbpassword
* jdbcName
* @author 蒋鑫
*/
private String dbUrl="jdbc:mysql://localhost:3306/mysql57";
private String dbUserName="root";
private String dbPassword="root";
这里改为你数据库的账号和密码
private String jdbcName="com.mysql.jdbc.Driver";
/**
* 获取数据库连接
* @return
* @throws Exception
*/
public Connection getCon() throws Exception{
Class.forName(jdbcName);
Connection con=DriverManager.getConnection(dbUrl,dbUserName,dbPassword);
return con;
}
/**
* 关闭数据库连接
* @param con
* @throws Exception
*/
public void closeCon(Connection con) throws Exception{
if(con!=null){
con.close();
}
}
/**
* 建立一个main方法测试是否可以连接数据库成功!
* @param args
* @author 蒋鑫
*/
public static void main(String[] args) {
DbUtil dbUtil=new DbUtil();
try {
dbUtil.getCon();
System.out.println("数据库连接成功");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这个工具包可以用很久的。然后写DAO类执行增加查询操作
建立一个DAO.java文件这个是用来对数据库进行操作的后台程序
里面代码如下
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class DAO {
/**
* login(Connection con,User user) 登录验证
* (Connection con,User user)注册功能
* @author 蒋鑫
*/
public user login(Connection con,user user) throws Exception{
user resultUser=null;
String sql="select * from t_user where userName=? and password=?";
PreparedStatement pstmt=con.prepareStatement(sql);
pstmt.setString(1, user.getUserName());
pstmt.setString(2, user.getPassword());
ResultSet rs=pstmt.executeQuery();
if(rs.next()){
resultUser=new user();
resultUser.setUserName(rs.getString("userName"));
resultUser.setPassword(rs.getString("password"));
}
return resultUser;
}
//注册功能
public boolean register(Connection con,user user) throws Exception{
boolean flag=false;
PreparedStatement pstmt = null;
String sql="INSERT INTO t_user(userName,password)VALUES(?,?)";
pstmt = con.prepareStatement(sql);
pstmt.setString(1, user.getUserName());
pstmt.setString(2, user.getPassword());
if (pstmt.executeUpdate() > 0) {
flag = true;
}
return flag;
}
}
不要忘了 用来存储从数据库读出来的和从前台接收到的账号密码的 pojo类 建立一个user.java
写好之后准备工作完成 然后继续开始写 RegisterServlet.java 服务里面的内容。源码
import java.io.IOException;
import java.sql.Connection;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/RegisterServlet")
public class RegisterServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/**
* 接收前台传来的值 账号和密码
*/
String userName=req.getParameter("userName");
String password=req.getParameter("password");
DbUtil db= new DbUtil();
user user=new user(userName,password);
DAO dao=new DAO();
try {
//数据库链接
Connection con=db.getCon();
if(dao.register(con,user)) {
resp.sendRedirect("login.jsp");
}else {
resp.sendRedirect("register.jsp");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
然后继续开始写 LoginServlet.java 服务里面的内容。源码
import java.io.IOException;
import java.sql.Connection;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/**
* 接收前台传来的值 账号和密码
*/
String userName=req.getParameter("userName");
String password=req.getParameter("password");
DbUtil db= new DbUtil();
user user=new user(userName,password);
DAO dao=new DAO();
try {
//数据库链接
Connection con=db.getCon();
if(dao.login(con, user)!=null) {
resp.sendRedirect("ok.jsp");
}else {
resp.sendRedirect("register.jsp");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
都写好之后 写一个ok.jsp如果登录成功就进入这个页面 没有成功就不进去,停留在原来界面。
还有数据库的设计。
表名 user
列表 username 类型 varchar 主键 非空
列表password 类型varchar
数据库里面的内容就是这些不管你有的是什么数据库 sql还是mysql 。
所以工作完成了看下演示效果吧
总结:
1.在正确的位置建立这些正确的文件
然后里面的代码我都在上面有写 你们可以一一对战着学习 ,好了 马上四点半了 我要睡觉了 明天早上8点还有起床的,大家写的时候多注意细节单词拼写什么的。
这是我的详细视频教学,还有全部源代码压缩成了一个包在这里地址可以下载,我本想免费给大家的。但是上传后至少设置一积分。所以如果按照上面没有做出来的同学可以去下载一下里面还有视频教学。其实上面已经给出了所以的项目文件名字还有所以的项目文件里面的源代码 没有一个省略的 我自己看了又检查了一遍!不想自己拼装的同学可以下载我的压缩包里面有项目还有视频。谢谢大家阅读我的文章到此结束!
https://download.csdn.net/download/qq_42499475/10569478