app登录界面背景 css_计算机毕业设计中Java web实现简登录页面(MyBatis+jsp+servlet+html+css+javascript)...
本文利用MyBatis+jsp+servlet+html+css+javascript实现了一个简单的登录页面。对用户输入的用户名和密码就行校验,校验通过则登录成功,密码和用户信息保存在mysql表中,通过MyBatis访问(MyBatis相关知识可参考先前的文章MyBatis测试)。先给出最终的效果图:
登录成功则进入如下页面:
登录失败,则进入如下页面:
如果输入的密码或者用户名为空或者不合法,则页面上提示:
(一)安装配置tomcat
这里使用的是tomcat 8.0,直接官网下载压缩包解压,然后添加环境变量TOMCAT_HOME(值为D:\apache-tomcat-8.0.52)并修改CLASSPATH环境变量(末尾添加%TOMCAT_HOME%\BIN),然后在D:\apache-tomcat-8.0.52\bin下双击startup.bat运行tomcat,运行成功,在浏览器中输入http://localhost:8080/,可见欢迎页面如图:
(二)eclipse配置tomcat 8.0
window-->preferences-->Server-->runtime environments,添加tomcat 8.0,然后apply即可。
双击server视图中的tomcat 8.0,需要如下配置,否则运行时可能会报错。
(三)eclipse创建Dynamic Web project
先给出工程视图如下:
具体步骤如下:
(1)创建Dynamic Web project工程,命名为LoginTest
注意选中下图中的单选框,这样自动创建一个web.xml文件
(2) 编写 index.jsp(这里只使用了index.jsp作为登录页面,注册查询等可以类似实现),先给出最终的index.jsp。实际上对于最简单的java web程序,只有一个web.xml和index.jsp即可运行,index.jsp的body中只写hello world,然后再tomcat上运行,就可实现java web的hello world。最终版本的index.jsp用到了模板css/init.css(用于初始化css的一些基本配置,以便屏蔽一些浏览器差异),css/login.css则是自定义的登录界面的样式;index.jsp还用到了js/login.js,利用javascript对输入框信息做一些校验并给出提示。最终的源码包中给出相应文件。
index.jsp:
"java" contentType="text/html; charset=utf-8"
pageEncoding="UTF-8"%>
span style="box-sizing: border-box;outline: 0px;color: rgb(80, 161, 79);overflow-wrap: break-word;">"-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
"Content-Type" content="text/html; charset=utf-8">
登录界面
"stylesheet" href="css/inti.css" type="text/css" />
"stylesheet" href="css/login.css" type="text/css" />
"bg">
class='div_logo'>
用户登录
class='div_form'>'login' action='Login' onsubmit='return validation()' method='post'>
class='div_login_input' id='user'>
'icon_user'>
class='login' id='username' type='text' name='username' placeholder='用户名'>
class='hint' id='hint_user'>
class='div_login_input' id='pwd' >
'icon_pwd'>
class='login' id='password' type='password' name='password' placeholder='请输入密码'>
class='hint' id='hint_pwd'>
class='div_btn'>
'login_submit' type='submit' value='登录'>
(3)编写LoginServlet.java
package com.test.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.ibatis.session.SqlSession;
import com.test.dao.*;
import com.test.util.GetSqlSession;
public class LoginServlet extends HttpServlet{
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException{
UserDaoImplement usrdao = new UserDaoImplement();
SqlSession session = GetSqlSession.createSqlSession();
String username = req.getParameter("username");
String password = req.getParameter("password");
resp.setContentType("text/html;charset=UTF-8");
try {
PrintWriter pw = resp.getWriter();
pw.println("");
pw.println("");
if(usrdao.verify(username, password, session)==true)
{
pw.println("Login success.");
}
else
{
pw.println("Login failed. Wrong username or password");
}
pw.println("");
pw.println("");
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
LoginServlet.java获取提交的用户名和密码信息,调用验证方法进行验证,并根据验证结果写验证成功或者失败的界面。这里没有主方法,因为tomcat运行时存在一个主方法。
(4)配置web.xml
<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">
<display-name>testdisplay-name>
<welcome-file-list>
<welcome-file>index.jspwelcome-file>
welcome-file-list>
<servlet>
<servlet-name>LoginServletservlet-name>
<servlet-class>com.test.servlet.LoginServletservlet-class>
servlet>
<servlet-mapping>
<servlet-name>LoginServletservlet-name>
<url-pattern>/Loginurl-pattern>
servlet-mapping>
web-app>
web.xml功能页面使用的类以以及类与url-pattern之间的关系。web.xml和index.jsp以及LoginServlet.java可构成一个web service,其中inde.jsp定义了页面,LoginServlet.java是提供服务的程序,而web.xml指定了页面与servlet类之间的映射关系,即某个功能页面使用哪个类在后台进行处理。
(5)配置MyBatis访问数据库中的用户表
首先建立用户表,插入两条数据:
create database test;
use test;
create table tbl_user(
username varchar(32) NOT NULL,
password varchar(32) ,
PRIMARY KEY ( username )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into tbl_user values("admin", "admin");
insert into tbl_user values("testname", "123456");
然后参考先前的文章MyBatis测试配置MyBatis使用的config/Configure.xml ,mysql.properties以及UserMapper.xml,文章最后在源码中给出。这里先给出表对应的实体类User.java和UserMapper.xml:
User.java:
package com.test.entity;
public class User {
private String username;
private String password;
//无参构造方法
public User(){
}
//有参构造方法
public User(String username, String password){
this.username = username;
this.password = password;
}
public void setUsername(String username){
this.username = username;
}
public void setPassword(String password){
this.password = password;
}
public String getUsername(){
return this.username;
}
public String getPassword(){
return this.password;
}
}
UserMapper.xml:
span style="box-sizing: border-box;outline: 0px;overflow-wrap: break-word;">mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="UserMapper">
<select id="getUserByName" parameterType="String" resultType="User">
select * from tbl_user where username = #{username}
select>
mapper>
访问数据库使用GetSqlSession类,该类利用Configure.xml文件获取sqlSessionFactory实例,并返回一个用于操作数据库的SqlSession实例。GetSqlSession.java如下:
package com.test.util;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class GetSqlSession {
public static SqlSession createSqlSession(){
SqlSessionFactory sqlSessionFactory = null;
InputStream input = null;
SqlSession session = null;
//创建sqlSessionFactory
try {
input = Resources.getResourceAsStream("config/Configure.xml");
sqlSessionFactory = new SqlSessionFactoryBuilder().build(input);
session = sqlSessionFactory.openSession();
return session;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
}
(6) dao层定义接口并实现接口中的方法
编写接口UserDao.java并由UserDaoImplement.java实现该接口,使用接口的目的是统一规范。实现接口的类,访问数据库中的tbl_user表,查找用户名和密码,与用户提交的用户名和密码进行比对,并返回校验结果。
UserDao.java:
package com.test.dao;
import org.apache.ibatis.session.SqlSession;
public interface UserDao {
public boolean verify(String username, String password, SqlSession session);//verify username and passwd
}
UserDaoImplement.java:
package com.test.dao;
import org.apache.ibatis.session.SqlSession;
import com.test.entity.*;
public class UserDaoImplement implements UserDao {
public boolean verify(String username, String password, SqlSession session){
User user = (User) session.selectOne("UserMapper.getUserByName", username);
if(user == null){
session.close();
return false;
}
else if(user.getUsername().equals(username) && user.getPassword().equals(password))
{
session.close();
return true;
}
else
{
session.close();
return false;
}
}
}
(7)运行测试:
结果如下:
用户名只能是英文,输入用户名/密码为admin/admin或者testname/123456时候登录成功,否则登录失败。
更多请关注小编继续了解,免费赠送网页设计作业源代码哦!
如需要精品网页设计作业和毕业设计作品
联系QQ:2656895362进行咨询
网站地址:http://www.85work.com/扫码关注最新动态更多精彩,点击下方“
app登录界面背景 css_计算机毕业设计中Java web实现简登录页面(MyBatis+jsp+servlet+html+css+javascript)...相关推荐
- 计算机毕业设计中Java编程案例之学生管理系统
标准学生类: package student; //学生类 public class Student {//编写成员变量 //学号 private String id; //姓名 private St ...
- 计算机毕业设计中java多线程与异常处理
(一) Thread子类的方法实现多线程 编写 TwoThreadsTest.java 程序文件,源代码如下. class SimpleThread extends Thread {public Si ...
- 计算机毕业设计中JAVA 23种开发模式详解(代码举例)
设计模式(Design Patterns) --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- 计算机毕业设计 基于java web的在线考试系统(源码+论文)
文章目录 1 项目简介 2 实现效果 3 系统设计 3.2 系统设计流程 4 关键代码 5 论文概览 6 最后 1 项目简介
- 怎么修改计算机密码界面的背景,操作方法:在Win10中输入密码时如何修改登录界面的背景图片(两种方法)...
Win10系统的登录背景默认为"英雄"墙纸.我相信许多朋友对此感到厌倦. Win10没有提供自由更改的选项,但是我们可以通过某些方法或工具来更改登录背景. 方法1:手动修改 Win ...
- 怎么修改计算机密码界面的背景,怎么修改Win7登录界面背景图片(欢迎界面背景图片)?...
怎么修改Win7登录界面背景图片(欢迎界面背景图片)?之前自己曾设置过,当时没有想到分享给朋友们!现在把这个帖子补上,先来看下效果图片,笔者将其换成了苹果Mac的登陆界面!只要您能从中获得乐趣,其实这 ...
- 怎么改锁定计算机的背景,电脑修改登录界面背景壁纸的操作方法
原标题:"Win7系统电脑修改登录界面背景壁纸的操作步骤"相关电脑问题教程分享. - 来源:191路由网. Win7系统电脑怎么修改电脑登录界面?有用户喜欢对系统做一些个性化设置, ...
- 修改Windows7登录界面背景图片的方法
不用借助第三方软件修改windows7登陆界面背景图片的方法: 1.按win+R快捷键打开运行界面在上面的对话框中输入"regedit":接着单击"确定"打开注 ...
- 解决win11/win10在登陆界面(解锁界面)点击获取每日壁纸无效的问题 - get Daily Lockscreen and Wallpaper - Win11/10的登录界面背景图片在哪里?
效果图 点击链接无法下载图片,登陆后一点反应都没有... 本地的Win11/10登录界面背景图片储存位置 C:\Users\你的用户名\AppData\Local\Packages\Microsoft ...
最新文章
- 9.8.6恢复系统数据库
- 全栈技术实践经历告诉你:开发一个商城小程序要多少钱?
- CDays–2 完成核心功能 CMD模块 Python基础教程 cmd cli
- Set 和 Map 数据结构
- GD32通用定时器、高级定时器PWM输出例程
- WPF 菜单栏滚动到顶部后固定的两种方法
- 深度学习4线性回归,逻辑回归
- 计算机控制常用数据通信标准,计算机系统第6章通信ppt课件.ppt
- 描述符演练-01-完善代码,使得对象添加属性的行为可以成功
- vue+axios方法封装(restful,ajax)
- 台式电脑一直跳一个计算机页面出来,我的电脑界面上莫名其妙的多出了好几个IE浏览器拜托各位了 3Q...
- DataGrid中間隔色的實現
- 谷歌云服务器账号,免费使用谷歌云服务器一年
- 讲座 | lidar目标检测------图森未来CTO王乃岩
- 计算机综合布线实验报告,综合布线设计实验报告.doc
- 【T+】畅捷通T+服务管理中,异步任务服务(TPlusPopAsyncTaskService1700)无法启动
- Exer4.6.c(undone)
- 【第68篇】多目标跟踪:文献综述
- GLAD应用:体全息光栅模拟
- 【笔记】《算法设计与分析(第三版)》-王晓东著-第3章-动态规划
热门文章
- gradle引入依赖:_Gradle善良:获得更多的依赖性见解
- nio 读取目录所有文件_在NIO.2中使用文件和目录
- InterruptedException和中断线程的解释
- java 文件流读取文本_如何在Java 8中处理流和读取文本文件
- Sun过去的世界中的JDK 11和代理
- stackexchange_通过Spring Social发推StackExchange问​​题
- eclipse发布rest_在Eclipse中高效运行HTTP / REST集成测试
- jboss 不适用内置日志_适用于孩子,父母和祖父母的JBoss HornetQ –第1章
- javadoc 开源项目_在下一个项目中不使用JavaDoc的5大原因
- javaone_JavaOne正在重建动力