当前位置:网站首页>第3章业务功能开发(用户访问项目)
第3章业务功能开发(用户访问项目)
2022-07-07 15:39:00 【做一道光】
3.1首页功能
用户访问项目首页,首先进入登录页面。
首先明确需求,规划程序访问流程,画好UML顺序图再编写代码,方便以后对项目进行管理,同时也是开发规范的硬性要求
我使用的是processOn在线编译网站,当然也可以使用star uml,Rational Rose ,Rational Rose 的下载破解流程连接如下点这里 。
项目结构
运行tomcat
1.IndexController类
package com.it.crm.web.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class IndexController {
/*
理论上,给Controller分配url:http://127.0.0.1:8080/crm/
为了简便,框架规定省去 协议名://ip:port/项目名称,用/直接代表上面的url,即到达根目录
*/
@RequestMapping(value = "/")
public String index(){
return "index";
}
}
2.进入标记蓝色阴影的index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<script type="text/javascript">
window.location.href = "settings/qx/user/toLogin.do";
</script>
</body>
</html>
3.跳转到UserController
package com.it.crm.settings.web.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class UserController {
@RequestMapping(value = "/settings/qx/user/toLogin.do")
public String toLogin(){
return "settings/qx/user/login";
}
}
4.进入登录界面
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String basePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+"/"+request.getContextPath()+"/";
%>
<html>
<head>
<meta charset="UTF-8">
<base href="<%=basePath%>">
<link href="jquery/bootstrap_3.3.0/css/bootstrap.min.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="jquery/jquery-1.11.1-min.js"></script>
<script type="text/javascript" src="jquery/bootstrap_3.3.0/js/bootstrap.min.js"></script>
</head>
<body>
<div style="position: absolute; top: 0px; left: 0px; width: 60%;">
<img src="image/IMG_7114.JPG" style="width: 100%; height: 90%; position: relative; top: 50px;">
</div>
<div id="top" style="height: 50px; background-color: #3C3C3C; width: 100%;">
<div style="position: absolute; top: 5px; left: 0px; font-size: 30px; font-weight: 400; color: white; font-family: 'times new roman'">CRM <span style="font-size: 12px;">©2019 动力节点</span></div>
</div>
<div style="position: absolute; top: 120px; right: 100px;width:450px;height:400px;border:1px solid #D5D5D5">
<div style="position: absolute; top: 0px; right: 60px;">
<div class="page-header">
<h1>登录</h1>
</div>
<form action="workbench/index.html" class="form-horizontal" role="form">
<div class="form-group form-group-lg">
<div style="width: 350px;">
<input class="form-control" type="text" placeholder="用户名">
</div>
<div style="width: 350px; position: relative;top: 20px;">
<input class="form-control" type="password" placeholder="密码">
</div>
<div class="checkbox" style="position: relative;top: 30px; left: 10px;">
<label>
<input type="checkbox"> 十天内免登录
</label>
<span id="msg"></span>
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block" style="width: 350px; position: relative;top: 45px;">登录</button>
</div>
</form>
</div>
</div>
</body>
</html>
边栏推荐
- Smart logistics platform: make overseas warehouses smarter
- 99%的人都不知道|私有化部署还永久免费的即时通讯软件!
- QT video transmission
- With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore
- [Huang ah code] Why do I suggest you choose go instead of PHP?
- LeetCode 403. Frog crossing the river daily
- Devops' operational and commercial benefits Guide
- 专精特新软件开发类企业实力指数发布,麒麟信安荣誉登榜
- LeetCode 648(C#)
- How to implement safety practice in software development stage
猜你喜欢
让保险更“保险”!麒麟信安一云多芯云桌面中标中国人寿, 助力金融保险信息技术创新发展
Matplotlib绘图界面设置
Reflections on "product managers must read: five classic innovative thinking models"
Sator推出Web3遊戲“Satorspace” ,並上線Huobi
LeetCode刷题day49
如何在博客中添加Aplayer音乐播放器
麒麟信安加入宁夏商用密码协会
Sator a lancé le jeu web 3 "satorspace" et a lancé huobi
测试用例管理工具推荐
【TPM2.0原理及应用指南】 12、13、14章
随机推荐
【可信计算】第十二次课:TPM授权与会话
The computer cannot add a domain, and the Ping domain name is displayed as the public IP. What is the problem? How to solve it?
redis主从、哨兵主备切换搭建一步一步图解实现
LeetCode 515(C#)
MySQL implements the query of merging two fields into one field
Flash build API service
The process of creating custom controls in QT to encapsulating them into toolbars (II): encapsulating custom controls into toolbars
麒麟信安中标国网新一代调度项目!
LeetCode 1049. Weight of the last stone II daily question
Reflections on "product managers must read: five classic innovative thinking models"
管理VDI的几个最佳实践
99% of users often make mistakes in power Bi cloud reports
SIGGRAPH 2022最佳技术论文奖重磅出炉!北大陈宝权团队获荣誉提名
阿富汗临时政府安全部队对极端组织“伊斯兰国”一处藏匿点展开军事行动
MySQL usage notes 1
LeetCode 1043. Separate the array to get the maximum and daily questions
Blue Bridge Cup final XOR conversion 100 points
L1-027 出租(Lua)
Solidity函数学习
Solidity 开发环境搭建