|
本帖最后由 费曼 于 2015-5-26 18:07 编辑
①拉两个输入框进行密码和账号的输入
两个输入框分别绑定data1的两个关系
②在数据库test下建表(自己爱到哪里建到哪里建)
因为没有注册界面,也没写注册代码,就自己在数据库加条数据
③建一个web项目 建一个自己的servlet类(继承HttpServlet的类)再进行配置web.xml文件
我这里就不说怎么建web项目了 嫌麻烦 直接用baas的吧
导入baas项目 建一个Myservlet类
配置web.xml文件(/baas/WEB-INF/web.xml)
- <servlet>
- <servlet-name>login</servlet-name>
- <servlet-class>com.servlet.MyServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>login</servlet-name>
- <url-pattern>/login</url-pattern>
- </servlet-mapping>
复制代码 ④覆盖public void service(ServletRequest arg0, ServletResponse arg1) 方法 实现登陆的功能
这里注意的是需要从前端获取参数params的json格式的参数,具体看⑤的做法
- public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
- Connection conn =null;
- PreparedStatement ps = null;
- ResultSet rs = null;
-
- // 参数序列化 这个是FastJson 。jar包的json解析工具 自己百度一下
- JSONObject params = (JSONObject) JSONObject.parse(request.getParameter("params"));
-
- try {
- //JDBC的东西 自己到网上百度JDBC
- Class.forName("com.mysql.jdbc.Driver");
- conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test", "root","x5");
- conn.setAutoCommit(false);
- ps = conn.prepareStatement("select * from user where username=? and password = ?");
- //设置参数
- ps.setString(1, params.getString("username"));
- ps.setString(2, params.getString("password"));
- rs = ps.executeQuery();
- String str = null;//返回信息
- if(rs.next()){
- //成功登录
- str = "{state:true,message:'登陆成功!'}";
- }else{
- str = "{state:false,message:'账号或密码错误!'}";
- }
-
- //向前端返回信息
- response.setContentType("text/html;charset=utf-8");
- response.getWriter().write(str);
-
- } catch (SQLException | ClassNotFoundException e) {
- e.printStackTrace();
- }finally{
- //关闭资源
- try {
- if(rs!=null){
- rs.close();
- }
- if(ps!=null){
- ps.close();
- }
- if(conn!=null){
- conn.close();
- }
-
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
复制代码 ⑤前端使用ajax发送请求
- Model.prototype.button4Click = function(event){
- var data = this.comp("data1");
-
- //JSON对象封装参数
- var options = {
- "username":data.getValue("username"),
- "password":data.getValue("password"),
- };
-
- //登陆
- $.ajax({
- type: "GET",
- //url的写法是/项目名/请求 参考servlet的知识
- url: "/baas/login",
- //把json对象转成字符串 相当于在url后增加 url?params={username:XXXX,password:XXXXX}
- data:"params="+JSON.stringify(options),
- success: function(result){
- //rusult为后端传回来的数据 response.getWriter().write(str); 下面语句为转换成json对象
- result = eval("("+result+")");
- if(result.state){
- //{state:true,message:'登陆成功!'}
- alert(result.message);
- }else{
- //{state:false,message:'账号或密码错误!'}
- alert(result.message);
- }
- },
- error:function(result){
- alert("登陆错误");
- }
- });
- };
复制代码
效果图
|
|