在Java web模板的上进行编写
要求:
链接: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模板的上进行编写的更多相关文章
- JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识
JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...
- java web+模板
这次测试需要在java web的基础上套入模板,在测试的过程中我遇到了许多问题,现在我可以使用模板来美化网页的许多格式.但是模板的许多代码我还是看不懂,其中有jquery的许多代码.在今后我会学习相关 ...
- JAVA WEB快速入门之从编写一个基于SpringMVC框架的网站了解Maven、SpringMVC、SpringJDBC
接上篇<JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP.IOC)>,了解了Spring的核心(AOP.IOC)后,我们再来学习与实践Maven.Sp ...
- java web(四)文件上传与下载
一.文件上传原理 1.在TCP/IP中,最早出现的文件上传机制是FTP ,它是将文件由客户端发送到服务器的标准机制:但是在jsp使用过程中不能使用FTP方法上传文件,这是由jsp运行机制所决定. 通 ...
- JAVA WEB快速入门之从编写一个JSP WEB网站了解JSP WEB网站的基本结构、调试、部署
接上篇<JAVA WEB快速入门之环境搭建>,在完成了环境搭建后(JDK.Tomcat.IDE),现在是万事具备,就差写代码了,今天就来从编写一个JSP WEB网站了解JSP WEB网站的 ...
- java+web+大文件上传下载
文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦.缺乏交互.用户体验差. 一.前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用 ...
- java web学习总结(二十三) -------------------编写自己的JDBC框架
一.元数据介绍 元数据指的是"数据库"."表"."列"的定义信息. 1.1.DataBaseMetaData元数据 Connection.g ...
- Java WEB ----- 文件的上传
最近学到的web阶段的文件的上传,就想记录一下,帮助自己复习以及帮助大家学习,一般我都会把上传的文件存到服务器中的web-inf 下面,因为这样用户不会直接访问到,我们存到数据库的一般都是路径.这里没 ...
- Java Web(十一) 文件上传与下载
文件上传 上传的准备工作 表单method必须为post 提供file组件 设置form标签的enctype属性为multipart/form-data,如果没有设置enctype属性,浏览器是无法将 ...
随机推荐
- 初步学习jquery学习笔记(一)
什么是jquery? Jquery是javascript的一个函数库包含以下功能: html元素选取 html元素的操作 css操作 html事件的函数 javacript的特效 html的遍历和修改 ...
- Python和mysql的连接
python与mysql的连接: 说明:前提是已近安装了mysql以及可视化工具(本人装的是Navicat) 1.在cmd下下载Python的第三方数据库包:pip install pymysql: ...
- 如何用vue封装一个防用户删除的平铺页面的水印组件
需求 为了防止截图等安全问题,在web项目页面中生成一个平铺全屏的水印 要求水印内容为用户名,水印节点用户不能通过开发者工具等删除 效果 如上图 在body节点下插入水印DOM节点,水印节点覆盖在页面 ...
- 前端页面适配的rem换算 为什么要使用rem
之前有些适配做法,是通过js动态计算viewport的缩放值(initial-scale). 例如以屏幕320像素为基准,设置1,那屏幕375像素就是375/320=1.18以此类推. 但直接这样强制 ...
- 曹工说Spring Boot源码(5)-- 怎么从properties文件读取bean
写在前面的话 相关背景及资源: 曹工说Spring Boot源码(1)-- Bean Definition到底是什么,附spring思维导图分享 曹工说Spring Boot源码(2)-- Bean ...
- java复习(2)
1.函数的重载:在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不相同就可以. 重载与返回值类型无关,只看参数列表.重载方便阅读,优化了程序的设计 eg://返回两个 整数值的 ...
- ajax跨域jsonp —— javascript
目录 jsonp是什么 jsonp原理 原生js使用jsonp jquery使用jsonp jsonp是什么 jsonp作用:解决跨域问题 为什么有跨域问题? “同源策略限制了从同一个源加载的文档或脚 ...
- 81. Search in Rotated Sorted Array II (JAVA)
Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand. (i.e. ...
- Java的duotaix
今天看到博客园上一位原创的博文讲解Java多态性,觉得不错,不过没有解释,特此注释,侵删 public class MyTest { public static void main(String ar ...
- GDAL栅格矢量化
在这里主要提供直接能用的栅格矢量化代码,这个函数中路径输入为QStrng,如果是其他类型的,请直接转成const char *: bool Polygonize(const QString& ...