个人技术博客(α)

一、前言

短短的α冲刺阶段就这么结束了,时间短暂,感觉学到的东西有限,不过也总算是有所收获。α阶段将要结束,由于种种原因,我们的团队项目也才刚刚步入正轨,不过一切都还来得及。写这一篇博对这段时间学习进行总结和对下一阶段学习进行规划。


二、这段时间的学习总结

Android APP部分(在同学录作业过程中所学习)

  • constraint布局。在2016年由Google I/O推出. 号称将成为主流布局样式, 完全代替其他布局(有待考证)。在同学录作业中使用约束布局实现了主界面、用户添加界面、查询等界面的布局。初步熟悉了如何构造出简单的布局界面。

  • 布局跳转,点击事件。熟悉了如何书写按钮,view的点击事件。长按、短按有不同响应。部分代码如下

    • 此为布局间跳转的点击事件
  Button addBtn=(Button)findViewById(R.id.AddButton);
        addBtn.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v){
                Intent intent=new Intent(MainActivity.this,AddActivity.class);
                startActivity(intent);
            }
        });
- 以下为长按删除操作(代码太长,有所省略)
values.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

            @Override
            public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                                           int arg2, long arg3) {
            
                // 通过Dialog提示是否删除
                AlertDialog.Builder builder = new AlertDialog.Builder(
                        SelectActivity.this);
                builder.setMessage("确定要删除吗?");
                // 确定按钮点击事件
                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        delete(id);
                        replaceList(selectAll());// 删除后刷新列表
                    }
                });
                // 取消按钮点击事件
                builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                });
                builder.create().show();

                return true;
            }
        });
- 以下为短按进入修改信息
        values.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                                    long arg3) {
               //此处为修改信息的操作
           }
}
  • 对Android数据库Sqlite的操作与使用(进行增删改查操作)
    • 以下举例为添加操作
 public void dataInsert(String name, String address, String phoneNumber, String weChatNumber, String mailBoxNumber, String qqNumber,
                        String personalDescription) {
        DB = SQLiteDatabase.openOrCreateDatabase(getFilesDir() + "/info.db",
                null);
        String insertSql="insert into classmate(Name,Address,PhoneNumber,WechatNumber,MailboxNumber,QQNumber,PersonalDescription) " +
                "values(?,?,?,?,?,?,?)";
        DB.execSQL(insertSql,new String[]{name,address,phoneNumber,weChatNumber,mailBoxNumber,qqNumber,personalDescription});
    }

后端部分

  • SpringMVC+Tomcat+MySql环境搭建。使用idea集成开发环境、maven搭建springmvc。以下为浏览器端进行的测试

    • 搭建成功

    • 成功返回json数据

  • controller的使用。对用户请求进行处理

    • 以下为登录操作的简单代码
  @RequestMapping(value = "/login", method = RequestMethod.GET)
    public Map login(HttpServletRequest req, HttpServletResponse rep) throws Exception {
        Map map=new HashMap();
        String userName=req.getParameter("userName");
        String userPassword=req.getParameter("userPassword");
        String realPassword=userRepository.findByUserName(userName).getUserPassword();
        if(userPassword.equals(realPassword)){
            map.put("result",1);
        }
        else{
            map.put("result",0);

        }
        return map;
    }
  • 使用navicat图形化界面操作Mysql数据库

三、之后的学习规划

  • 为了解决每次打开APP用户都要进行登录的操作,决定使用基于token的身份验证方式
  • 优化对数据库的操作,改善性能
  • 将项目部署到云端
  • 在后端项目进行顺利的情况下,参与到APP端的工作中去

四、最后的最后

  • 这段时间学习过程中给我最大的感受就是用好搜索引擎将会使学习的过程事半功倍。时间太短,很难系统的去学习一部分知识,要短时间实现一个功能就是通过搜索看别人是怎么实现的,照猫画虎的将自己想要的功能实现出来
  • 同时也很感谢一些队友。在这次的团队协作过程中,即使我们基础较差,大家也都没有轻言放弃,大家都在尽力的去学习。尽管进度比较慢,但是我们都在不断向前。相信我们最后可以给出一份满意的答卷。
posted @ 2017-11-16 17:25  淡然·  阅读(222)  评论(1编辑  收藏  举报