要求:

链接:https://pan.baidu.com/s/15NdAt-aiv-X9sRbMSfXYXQ 
提取码:7agw

web模板:

链接:https://pan.baidu.com/s/1Af33mSflqFHj-1gj4sOOpw 
提取码:wpye

对于这个web模板的修改是以测试的形式进行的,以前只是从零开始写一些简单的网页,没有接触过在模板的基础上修改网页,刚刚看到要求时,不知道从哪下手。

测试过后,感觉先了解模板的基本架构很重要,然后再按照要求去修改。我没有完成全部要求,只实现了一些,在编码的过程中遇到了许多问题,有的还待解决,以

后会进一步学习并解决问题。

模板的登录界面

登录的servlrt路径在login.html中已给出,下图

登录用的servlet

package com.Servlet;

import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
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.DBUtil; public class LoginServlet extends HttpServlet{
private static final long serialVersionUID = 1L; //当从jsp跳转到servlet类时,首先执行service函数(这是定理)
protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException {
req.setCharacterEncoding("UTF-8");//设置字符集,避免乱码
String username = req.getParameter("user");//获取jsp界面的username1和password1的值
String password = req.getParameter("pwd"); Connection conn = DBUtil.getConn();//这里就是从DBUtil类里面得到连接
Statement state =null;
ResultSet rs = null;
int f=0;
try
{
String sql = "select * from user";//SQL语句
state = conn.createStatement();
rs=state.executeQuery(sql);
while(rs.next())
{ if(rs.getString("password").equals(password) && rs.getString("username").equals(username))
{
f=1; }
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
DBUtil.close(rs, state, conn);
} if(f==1)
{
System.out.println("登录成功!");
resp.sendRedirect(req.getContextPath()+"/main.html");
}
else
{
System.out.println("登录失败!");
resp.sendRedirect(req.getContextPath()+"/login.html");
}
} }

将该servlet的路径配置成上面所看到的路径

下面是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>WJDC_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>CreateUserServlet</servlet-name>
<servlet-class>com.Servlet.CreateUserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CreateUserServlet</servlet-name>
<url-pattern>/CreateUserServlet/CreateUserServlet</url-pattern>
</servlet-mapping> <servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.Servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/dengluServlet</url-pattern>
</servlet-mapping>
</web-app>

注册界面的jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html> <%@page import="com.Servlet.*"%>
<%@page import="com.Bean.*"%>
<%@page import="com.DBUtil.*"%>
<%@page import="com.Servlet.*"%>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css"> </style>
</head>
<body> <div class="colorcloth">
<div class="container">
<section>
<form action="${pageContext.request.contextPath}/CreateUserServlet/CreateUserServlet" method="post" onsubmit="return check()">
<!---${pageContext.request.contextPath}的目的是找到主工程的名字,/Servlet/Userservlet就是web.xml下面配置的路径,也就是servlet的路径--->
<span class="user">用户名</span>
<input type="text" name="user" class="buser" id="iuser" placeholder=" Usename">
<br/>
<span class="password">密码</span>
<input type="password" name="password" class="bpassword" id="ipassword" placeholder=" Password">
<br/>
<span class="again-password">确认密码</span>
<input type="password" name="again-password" class="bagain-password" id="iagain-password" placeholder=" Password">
<br/>
<span class="phone">手机号码</span>
<input type="text" name="phone" class="bphone" id="iphone" placeholder=" Phone">
<br/>
<span class="unit">所属单位</span>
<input type="text" name="unit" class="bunit" id="iunit" placeholder=" Unit">
<br/>
<input type="submit" value="创建" class="butn">
</form>
</section> <c:if test="${param.createerrortemp.equals('1') }">
<div class="createerror" id="icreateerror">
<p>两次输入的密码不一致</p>
</div>
</c:if> </div>
</div> <script type="text/javascript"> function check() { var username = document.getElementById("iuser");
var password = document.getElementById("ipassword");
var againpassword = document.getElementById("iagain-password");
var phone = document.getElementById("iphone");
var unit = document.getElementById("iunit"); var changdu = phone.value.length; //非空
if(username.value == '') {
alert('用户名为空');
username.focus();
return false;
}
if(password.value == '') {
alert('密码为空');
password.focus();
return false;
}
if(againpassword.value == '') {
alert('第二次输入密码为空');
againpassword.focus();
return false;
}
if(phone.value == '') {
alert('电话号码为空');
phone.focus();
return false;
} if(changdu != 11){
alert('电话号码长度错误');
phone.focus();
return false;
} if(unit.value == '') {
alert('所属单位为空');
unit.focus();
return false;
} if(password.value != againpassword.value) {
alert('密码不一致');
password.focus();
return false;
} } </script> </body>
</html>

注册所用的servlet

package com.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 com.Dao.*; public class CreateUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L; //当从jsp跳转到servlet类时,首先执行service函数(这是定理)
protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException {
req.setCharacterEncoding("UTF-8");//设置字符集,避免乱码 String username = req.getParameter("user");
String password = req.getParameter("password");
String againpassword = req.getParameter("again-password");
String phone = req.getParameter("phone");
String unit = req.getParameter("unit"); if(!(password.equals(againpassword))) {
resp.sendRedirect(req.getContextPath()+"/register.jsp?createerrortemp=1");
}
else {
Dao dao = new Dao();
dao.createUser(username, password, phone, unit);
resp.sendRedirect(req.getContextPath()+"/main.html");
}
}
}

Dao文件

package com.Dao;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import com.Bean.*;
import com.DBUtil.DBUtil; public class Dao { //创建账户
public int createUser(String usernamee, String passwordd, String phonee, String unitt) { String username = usernamee;
String password = passwordd;
String phone = phonee;
String unit = unitt; Connection conn = DBUtil.getConn();//这里就是从DBUtil类里面得到连接
Statement state =null;
String sql = null; sql = "insert into user (username,password,phone,unit) values ('"+username+"','"+password+"','"+phone+"','"+unit+"')"; try {
state = conn.createStatement();
state.executeUpdate(sql);//执行sql语句
conn.close();
} catch (SQLException e) {
e.printStackTrace();
} return 0;
} }

对于系统菜单那一块的代码还是没弄明白,之后会继续学习,往下进行

在Java web模板的上进行编写的更多相关文章

  1. JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识

    JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...

  2. java web+模板

    这次测试需要在java web的基础上套入模板,在测试的过程中我遇到了许多问题,现在我可以使用模板来美化网页的许多格式.但是模板的许多代码我还是看不懂,其中有jquery的许多代码.在今后我会学习相关 ...

  3. JAVA WEB快速入门之从编写一个基于SpringMVC框架的网站了解Maven、SpringMVC、SpringJDBC

    接上篇<JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP.IOC)>,了解了Spring的核心(AOP.IOC)后,我们再来学习与实践Maven.Sp ...

  4. java web(四)文件上传与下载

     一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...

  5. JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构、调试、部署

    接上篇<JAVA WEB快速入门之环境搭建>,在完成了环境搭建后(JDK.Tomcat.IDE),现在是万事具备,就差写代码了,今天就来从编写一个JSP WEB网站了解JSP WEB网站的 ...

  6. java+web+大文件上传下载

    文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦.缺乏交互.用户体验差. 一.前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用 ...

  7. java web学习总结(二十三) -------------------编写自己的JDBC框架

    一.元数据介绍 元数据指的是"数据库"."表"."列"的定义信息. 1.1.DataBaseMetaData元数据 Connection.g ...

  8. Java WEB ----- 文件的上传

    最近学到的web阶段的文件的上传,就想记录一下,帮助自己复习以及帮助大家学习,一般我都会把上传的文件存到服务器中的web-inf 下面,因为这样用户不会直接访问到,我们存到数据库的一般都是路径.这里没 ...

  9. Java Web(十一) 文件上传与下载

    文件上传 上传的准备工作 表单method必须为post 提供file组件 设置form标签的enctype属性为multipart/form-data,如果没有设置enctype属性,浏览器是无法将 ...

随机推荐

  1. [转帖]Spring Cloud底层原理

    拜托!面试不要再问我Spring Cloud底层原理 https://mp.weixin.qq.com/s/ZH-3JK90mhnJPfdsYH2yDA 毫无疑问,Spring Cloud 是目前微服 ...

  2. linux命令 集合

    ps:查看所有进程 // -e :显示所有进程:-f:代表全格式 ps -ef | grep python :查看后台运行的python程序,| 表示管道,grep表示筛选 & 符号:后台执行 ...

  3. DAX/PowerBI系列 - 累计总计(Cumulative Total, Running Total)

    DAX/PowerBI系列 - 累计总计(Cumulative Total) 2017/07/23 更新:B列公式(见最后) 2019/08/08 更新:在可视化数据的时候,一定要选择日期维度的日期列 ...

  4. MySQL表存在外键关系无法清空数据的解决方案

    先 SET FOREIGN_KEY_CHECKS=0; 然后delete删除,再 SET FOREIGN_KEY_CHECKS=1;

  5. php获取某经纬度附近地点位置

    最近在做小程序中 其中一个需求就是要到找出某个经纬度地点附近的位置 本质最终的目的就是确定以某个确定的经纬度地点,以某半径画圆形确定的4个点对应的经纬度 /** * [returnSquarePoin ...

  6. leetcode 980. Unique Paths III

    On a 2-dimensional grid, there are 4 types of squares: 1 represents the starting square.  There is e ...

  7. 基于Graylog的容器日志监控

    Docker日志 当一个容器启动的时候,它其实是docker deamon的一个子进程,docker daemon可以拿到容器里面进程的标准输出,然后通过自身的LogDriver模块来处理,LogDr ...

  8. Android判断是debug还是release模式

    1.当有些功能不希望在release模式实现时,但是debug模式又需要的时候,就可以对当前版本模式进行判断.如是debug模式则日志输出级别设置为Level.DEBUG,release模式设置为Le ...

  9. luffyapi项目 --短信认证的基本操作

    一.开通腾讯云短信 SDK 文档 :https://cloud.tencent.com/document/product/382/11672 1.官网注册实名账号:https://cloud.tenc ...

  10. Mysterious Crime CodeForces - 1043D (思维+组合数学)

    Acingel is a small town. There was only one doctor here — Miss Ada. She was very friendly and nobody ...