第三阶段第二周笔记及代码

2020/7/6–第一天—增删查改的实现

上午的时候:
通过.xml来处理持久层代码,以及新创添加活动.html以及修改.html

在.xml中书写处理代码>>在持久层Dao中添加两者都是传递类型(Activity entity)>>在接口类中定义>>实现类中@Autowired,并重载>>在Colltroller层

<mapper namespace="com.cy.pj.activity.dao.ActivityDao">
	<update id="updateObject">
	<!-- 在ActivityDao里面需要
	int updateObject(Activity entity);
	int insertObject(Activity entity);-+
			其他的流程一样没有区别 -->
		update tb_activity
		set title=#{title},
		category=#{category},
		startTime=#{startTime},
		endTime=#{endTime},
		remark=#{remark}
		where id=#{id}
	</update>
	<insert id="insertObject">
		insert into tb_activity
		(title,category,startTime,endTime,remark,state,createdTime,createdUser)
		values
		(#{title},#{category},#{startTime},#{endTime},#{remark},1,now(),#{createdUser})
	</insert>
</mapper>

@RequestMapping(“activity.html”)进入后可以选择新建,删除,修改,点击后会由resourse/template/pages/里面的.xml中的button按钮触发函数location.href="/activity/doDeleteById?id="+id;其中的/activity/doDeleteById是调用在控制层的方法

<button type="button" class="btn btn-danger btn-sm" 
	th:onclick="doDelete([[${a.id}]])">delete</button>
	↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
          function doDelete(id){
        	  //confirm为window对象中的一个方法,此方法的返回值为true或false
        	  if(!confirm("确认删除吗"))return;
        	  //基于id执行记录的删除操作
        	  location.href="/activity/doDeleteById?id="+id;
          }
	↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
	@RequestMapping("/activity/")//这里的activity   location.href="/activity/doDeleteById?id="+id;
public class ActivityController {
	   @RequestMapping("doDeleteById")//这里的doDeleteById  location.href="/activity/doDeleteById?id="+id;
	   public String doDeleteById(Long id) {
		   activityService.deleteById(id);
		   return "redirect:activity.html";
	   }
	   }

下午的时候:(几个插件可有可无吧,反正)
健康检查配置及测试
热部署配置及实现(最好不实现好一点)
Lombok插件应用:自己会提供很多方式的注解,简化代码,但是需要安装简短的安装过程

2020/7/7–第二天day08—AJAX_技术

Ajax (Asynchronous JavaScript and XML) 是一种Web应用技术,可以借助客户端脚 本(javascript)与服务端应用进行异步通讯,获取服务端数据以后,可以进行局部刷新。进而 提高数据的响应和渲染速度

Ajax 请求响应过程分析

所有的Ajax 请求都会基于DOM(HTML元素)事件,通过XHR(XMLHttpRequest)对象实现与服务端异步通讯局部更新,如图-4所示:图-4

Ajax 编程基本步骤分析(控制层>客户端(html)>JavaScript进行处理)

第一步:基于dom事件创建XHR对象(XMLHttpRequest对象)
第二步:注册XHR对象状态监听,通过回调函数(callback)处理状态信息。
第三步:创建与服务端的连接
第四步:发送异步请求实现与服务端的通讯
第五步:通过回调(callback)函数,获得响应结果并进行数据更新.(非阻塞)

//基于ajax技术中的XMLHttpRequest对象,向服务端发起异步Get请求
//
function doAjaxGet(url,params,callback){
     //1.创建XmlHttpRequest对象
      var xhr=new XMLHttpRequest();
     //2.设置状态监听,监听XmlHttpRequest对象与服务端通讯的过程(例如连接是否建立,请求是否在处理,响应是否已产生)
      xhr.onreadystatechange=function(){//callback(回调函数)
       //基于xhr对象获取的通讯状态,对响应数据进行处理
          if(xhr.readyState==4&&xhr.status==200){//500表示服务端出错了
                  //服务端响应的结果会传递给XHR对象,我们可以借助responseText获取响应结果
                  callback(xhr.responseText);
          }
     }
    //3.创建与服务端的连接
     xhr.open("GET",url+"?"+params,true);//true表示异步
     //4.发送请求
     xhr.send(null); //Get请求,send方法不传内容
   //5.对响应结果进行处理(在回调函数中处理)。
}
//基于ajax中XMLHttpRequest对象,向服务端发起异步Post请求。
//对于post请求在发送请求执行需要设置**请求头,见红色代码部分。**
 function doAjaxPost(url,params,callback){
         //1.创建XmlHttpRequest对象
         var xhr=new XMLHttpRequest();
         //2.设置状态监听,监听XmlHttpRequest对象与服务端通讯的过程.
         xhr.onreadystatechange=function(){//callback(回调函数)
                 //基于xhr对象获取的通讯状态,对响应数据进行处理
                 if(xhr.readyState==4&&xhr.status==200){//500表示服务端出错了
                        //服务端响应的结果会传递给XHR对象,
                 //我们可以借助xhr.responseText获取响应结果
                        callback(xhr.responseText);
                 }
         }
         //3.创建与服务端的连接
         xhr.open("POST",url,true);//true表示异步
         xhr.setRequestHeader("Content-Type",
      "application/x-www-form-urlencoded");
         //4.发送请求
         xhr.send(params); //post请求将参数写到send方法
         //5.对响应结果进行处理(在回调函数中处理)。
}

Ajax 编程框架基本实现

(function(){
        //定义一个函数,可以将其连接为java中的类
        var ajax=function(){}
        //在变量ajax指向的类中添加成员,例如doAjaxGet函数,doAjaxPost函数
        ajax.prototype={        
//书写doAjaxPost和doAjaxGet方式
		}
        window.Ajax=new ajax();
})()

使用的方式有三种

参考CGB-AJAX-01的三种方式
1.调用方法ajax.js-----------function 方法名(){}
2.对象调用ajaxfk.js----------(function(){…window.Ajax=new ajax();})()
3.调用外部的jquery.min.js

在这里插入图片描述
@ResponseBody注解对方法进行描述,用于告诉SpringMVC将方法返回值转换为json格式的字符串。

在这里插入图片描述

2020/7/8–第三天day09—ajax配置到CGB-ACTIVITY-02_josn

配置文件application.properties的优先级高于application.yml
html中的一行跨多列
activity.html中会基于ajax技术向服务端发异步请求获取数据,然后更新的页面上。
持久层,接口,接口实现类,控制层没没什么区别,主要是在html上面做动作

josn属于一种数据结构

下午写了删除以及添加
debugger进行浏览器调试

2020/7/10–第四天day10—动吧项目

上午:添加数据库,导入动吧项目,配置环境,运行,答疑
下午:日志文件的显示以及分页实现还有创建测试类

2020/7/11–第五天day11—动吧项目

基于此对象封装业务执行结果
在java语言,可以将简单内存中的对象分为两大类
1存储数据的对象(设计的关键在属性上),典型的POJO对象(VO BO DO)
2执行业务的对象(设计的关键在方法上),典型的conterllor server dao
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值