B/S架构-小米商城 一

B/S架构 小米商城 一

  1. 创建javaweb项目
    选择web Application,下一步即可
    创建
    创建成功后目录如下:
    web.xml是每个Java web 项目的必备文件,又叫做部署描述符,Servlet规范中定义的,是web应用的配置文件。本次项目在其中配置 servlet
    注:所有的相关配置文件都在这个< webappp>< /webapp>当中
    运行程序默认进入index.jsp页面中
    目录
  2. 配置tomcat(web应用服务器)
    配置
    配置

配置成功后导入TomCat包,如图:
配置
3. 一、登陆页面

1
2
3
4
5
6
7
8
9
10
11
12
13
<html>
<head>
<title>登陆页面</title>
</head>
<body>
<h1>登陆信息</h1>
<form action="login" method="post"> //method可用get或者post(get显示请求,post隐式请求,路径是看不到的)
用户名:<input type="text" name="username"><br/>
密&nbsp;&nbsp;码:<input type="password" name="pwd"><br/>
<input type="submit" value="登陆">
</form>
</body>
</html>

在web目录下创建succ.jsp文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="com.model.Account" %> ----->导入java包类,后面就可用java代码访问
<html>
<head>
<title>succ</title>
</head>
<body>
恭喜你登陆成功!
欢迎你:
<% ------>在jsp文件中用<% 放java代码 %>
Account ac = (Account) (session.getAttribute("ac"));
%>
<%=ac.getUsername()%> ----->在页面中把值输出来
</body>
</html>

在src目录下创建com.action包和com.modul包,并在modul包中创建Account类用于存放用户,在action包中创建CheckAc类(servlet类)继承HttpServlet使用service方法(若用页面method用get可用doGet方法,若页面用post可用doPost方法)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//Account类
public class Account {
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
String username;
String pass;
}
-----------------------------------------------------------------------------------------
//CheckAc类(服务器端)
public class CheckAc extends HttpServlet {
// HttpServletRequest:收集客户端到服务器端
// HttpServletResponse 服务器信息发给客户端
public void service(HttpServletRequest req, HttpServletResponse res) throws IOException {
//从客户端界面去信息
String username = req.getParameter("username");
String pwd = req.getParameter("pwd");
Account ac = new Account();
ac.setUsername(username);
ac.setPass(pwd);
//启动session,得到一个session对象
//session:在服务器端的一次会话:
//设置session的代码放到服务器端:一个用户登陆了一次,在本项目中任何页面可不用再登陆.只要判断就可以.
//一次会话:从本地服务器启动,到本地服务器结束的一个过程
HttpSession se = req.getSession();
//trim()去掉两边空格
if(username.trim().equals("admin")
&& pwd.trim().equals("admin")){
//session中赋值
se.setAttribute("ac",ac);
//sendRedirect 页面转向到succ.jsp
res.sendRedirect("succ.jsp");
}else{
res.sendRedirect("login.jsp");
}
}
}

配置web.xml文件

1
2
3
4
5
6
7
8
9
10
11
12
通过web.xml 来把/login 和 CheckAc连接起来
<welcome-file-list> ----》设置首页为login.jsp页面
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>CheckAc</servlet-name>---此行会关联第src下面的java文件
<servlet-class>com.action.CheckAc</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CheckAc</servlet-name> (是自己取的名,在本文件要唯一,尽量可以为类名相同.此名字要对应到<serlvet>servlet-name</servlet>)
<url-pattern>/login</url-pattern>
</servlet-mapping>
文章作者: 刘山
文章链接: http://threee-hub.github.io/2020/03/16/BS%E6%9E%B6%E6%9E%84%E5%B0%8F%E7%B1%B3%E5%95%86%E5%9F%8E%E4%B8%80/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 刘山的博客