Spring MVC + MyBatis 记录自己项目问题
2017-02-13 22:11
232 查看
前几天刚自己搭建的ssm 框架 ,这几天刚开始做
目前进度数据库设计暂时完事,然后登陆页面搞定,登录功能及其验证做完,记录从开始到现在遇见的问题和知识
复习几个注解哈
@Controller是告诉服务器 这个类是MVC中的C 这个类可以接收用户请求 处理用户请求
@RequestMapping 相当于请求方法的别名,决定了你跳转到这个类的哪个方法而已
@Autowired 它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。
@responsebody表示该方法的返回结果直接写入HTTP response body中
@PathVariable是用来获得请求url中的动态参数的
map判断为空的3种方法
1. map==null
2. map.size()==0
[b]3. map.isEmpty()
[/b]
如果用前俩种判断报错的话,证明其实你的map是没有创建的,想要判断可以用第三种
md5 加密方法实现
public static String MD5Encode(String origin) {
String resultString = null;
try {
resultString = new String(origin);
MessageDigest md = MessageDigest.getInstance("MD5");
resultString = byteArrayToString(md.digest(resultString.getBytes()));
}
catch (Exception ex) {
ex.printStackTrace();
}
return resultString;
}
public static String byteArrayToString(byte[] b) {
StringBuffer resultSb = new StringBuffer();
for (int i = 0; i < b.length; i++) {
[b] //若使用本函数转换则可得到加密结果的16进制表示,即数字字母混合的形式
[/b]
resultSb.append(byteToHexString(b[i]));
[b] //使用本函数则返回加密结果的10进制数字字串,即全数字形式
[/b]
// resultSb.append(byteToNumString(b[i]));
}
return resultSb.toString();
}
private static String byteToHexString(byte b) {
int n = b;
if (n < 0) {
n = 256 + n;
}
int d1 = n / 16;
int d2 = n % 16;
return hexDigits[d1] + hexDigits[d2];
}
private static String byteToNumString(byte b) {
int _b = b;
if (_b < 0) {
_b = 256 + _b;
}
return String.valueOf(_b);
}
自己写个main方法调用MD5Encode()就行了
做注册功能时候可以把密码调用MD5Encode()方法加密,然后存到数据库中
登录时候可以把用户输入的密码用MD5Encode()方法加密一遍和数据库中的对比就知道对不对啦!
js以及jsp
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
[b]jsp首行写错可能会导致js或css加载出现304 not modified
[/b]
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
document.getElementById("input的ID").value;
[b]获取div的内容向div中插入内容
[/b]
var data="嘿嘿";
document.getElementById('div的id').innerHTML = "<p style='color:red;'>" + data + "</p>";
js里取Object 值
data就是你的object
for(i in data){
alert(i); //获得属性
alert(data[i]); //获得属性值
}
js获取项目地址或者项目名称和当前路径
// 获取当前网址,如:http://localhost:8080/ssm/index.jsp
var currentPath = window.document.location.href;
// 获取主机地址之后的目录,如: /ssm/index.jsp
var pathName = window.document.location.pathname;
var pos = currentPath.indexOf(pathName);
// 获取带"/"的项目名,如:/ssm
var projectName = pathName.substring(1, pathName.substr(1).indexOf('/') + 1);
ajax success 请求成功时执行函数不进,可以先把errot输出看看具体原因
error : function(XMLResponse) {
alert(XMLResponse.responseText)
}
相关文章推荐
- 在使用WeifenLuo Suite时遇到的问题,自己记录一下,备忘
- Web项目中使用NLog记录日志,利用单件模式控制整个项目只有一个Logger对象的问题
- [项目过程中所遇到的各种问题记录]图表篇——有关MSChart的一些小技巧
- [项目过程中所遇到的各种问题记录]部署篇——项目部署过程中那些纠结的问题-IIS
- [项目过程中所遇到的各种问题记录]部署篇——项目部署过程中那些纠结的问题-IIS
- 由于自己开发的项目需要正则表达式,这里记录一下,以便查阅
- [项目过程中所遇到的各种问题记录]编辑器篇——使用FCKeditor生成静态分页HTML
- [项目过程中所遇到的各种问题记录]编辑器篇——FCKeditor自定义上传路径配置
- [项目过程中所遇到的各种问题记录]编辑器篇——FCKeditor相关知识及各种常见使用问题
- [项目过程中所遇到的各种问题记录]ORM篇——使用NHibernate配置对象实体的一些小问题 22
- 小记录:如何编译打版本自己的项目
- 这个常见的错误。大家记录下自己曾遇到的这样问题的解决方法
- 解决eclipse svn插件不能识别自己svn服务器中项目的问题(点team没有相关功能)
- [项目过程中所遇到的各种问题记录]编辑器篇——使用FCKeditor生成静态分页HTML
- 项目管理者的真正挑战,不是发现问题和记录问题,而是预见问题、控制问题和解决问题。
- 今日开始,记录一点自己感兴趣的技术问题
- 3月1日数平项目系统移植问题记录!
- [项目过程中所遇到的各种问题记录]ORM篇——使用NHibernate配置对象实体的一些小问题
- [项目过程中所遇到的各种问题记录]编辑器篇——FCKeditor自定义上传路径配置