家居网购项目实现011以下皆为部分代码,详见https://github.com/liyuelian/furniture_mall.git27.功能25-事务管理27.1下订单问题思考在生成订单的功能中,系统会去同时修改数据库中的order,order_item,furn三张表,如果有任意一个表修改失败,就会出现数据不一致问题。因此出现了事务控制问题。27.2思路分析之前,我们每次调用底层的dao操作,每次进行的都是独立事务,因此一但在一次业务中调用了多个dao操作,就不能保证多表的事务一致性。因为JDBC局部事务是控制是由java.sql.Connection来完成的,要保证多个DAO的数据
Java网络编程011.网络相关的概念1.1网络通信和网络网络通信概念:两台设备之间通过网络实现数据传输网络通信:将数据通过网络从一台设备传输到另一台设备java.net包下提供了一系列的类和接口,供程序员使用,完成网络通信网络概念:两台或多台设备通过一定物理设备连接起来构成了网络根据网络的覆盖范围不同,对网络进行分类:局域网:覆盖范围最小,仅仅覆盖一个教室或者一个机房城域网:覆盖范围较大,可以覆盖一个城市广域网:覆盖范围最大,可以覆盖全国甚至全球,万维网是广域网的代表1.3ip地址和地址分类ip地址概念:用于唯一标识网络中的每台计算机/主机查看ip地址:ipconfigip地址的表示形式:点
Java网络编程011.网络相关的概念1.1网络通信和网络网络通信概念:两台设备之间通过网络实现数据传输网络通信:将数据通过网络从一台设备传输到另一台设备java.net包下提供了一系列的类和接口,供程序员使用,完成网络通信网络概念:两台或多台设备通过一定物理设备连接起来构成了网络根据网络的覆盖范围不同,对网络进行分类:局域网:覆盖范围最小,仅仅覆盖一个教室或者一个机房城域网:覆盖范围较大,可以覆盖一个城市广域网:覆盖范围最大,可以覆盖全国甚至全球,万维网是广域网的代表1.3ip地址和地址分类ip地址概念:用于唯一标识网络中的每台计算机/主机查看ip地址:ipconfigip地址的表示形式:点
家居网购项目实现012以下皆为部分代码,详见https://github.com/liyuelian/furniture_mall.git29.功能27-Ajax检验注册名29.1需求分析/图解用户注册时,后端通过验证,提示用户当前输入的用户名是否可用。29.2思路分析29.3代码实现dao层和service层的方法在之前已经实现过了,这里不必再写29.3.1web层MemberServlet添加方法isExistUserName,该方法返回json格式的数据给前端/***校验某个用户名是否已经存在数据库中**@paramreq*@paramresp*@throwsServletExcepti
家居网购项目实现012以下皆为部分代码,详见https://github.com/liyuelian/furniture_mall.git29.功能27-Ajax检验注册名29.1需求分析/图解用户注册时,后端通过验证,提示用户当前输入的用户名是否可用。29.2思路分析29.3代码实现dao层和service层的方法在之前已经实现过了,这里不必再写29.3.1web层MemberServlet添加方法isExistUserName,该方法返回json格式的数据给前端/***校验某个用户名是否已经存在数据库中**@paramreq*@paramresp*@throwsServletExcepti
家居网购项目实现013以下皆为部分代码,详见https://github.com/liyuelian/furniture_mall.git32.功能30-会员不能登录后台管理32.1需求分析/图解管理员admin登录后,可以访问所有页面会员登录后,不能访问后台管理相关页面,其他页面可以访问说明:假定管理员就是“admin”,其他皆为会员名32.2思路分析修改权限验证AutoFilter添加逻辑:用户已经登录过了,但是用户名不为admin且访问的url中包含/manage/,就说明是非法用户访问后台,将其转发到首页即可。32.3代码实现AutoFilter:packagecom.li.furns
家居网购项目实现013以下皆为部分代码,详见https://github.com/liyuelian/furniture_mall.git32.功能30-会员不能登录后台管理32.1需求分析/图解管理员admin登录后,可以访问所有页面会员登录后,不能访问后台管理相关页面,其他页面可以访问说明:假定管理员就是“admin”,其他皆为会员名32.2思路分析修改权限验证AutoFilter添加逻辑:用户已经登录过了,但是用户名不为admin且访问的url中包含/manage/,就说明是非法用户访问后台,将其转发到首页即可。32.3代码实现AutoFilter:packagecom.li.furns
ES6新特性1.ES6是什么?DCMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,2015年6月发布ES6设计目标:达到JavaScript语言可以用来编写复杂的大型程序,成为企业级开发语言ECMAScript和JavaScript的关系:ECMAScript是JavaScript的规范/规则,JavaScript是ECMAScript的一种实现2.let声明变量2.1应用实例-基本使用关于IDEA新版本没有staticweb创建选项let使用letname="HelloWorld";//使用let声明变量,和var类似//1.console.log("name
ES6新特性1.ES6是什么?DCMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,2015年6月发布ES6设计目标:达到JavaScript语言可以用来编写复杂的大型程序,成为企业级开发语言ECMAScript和JavaScript的关系:ECMAScript是JavaScript的规范/规则,JavaScript是ECMAScript的一种实现2.let声明变量2.1应用实例-基本使用关于IDEA新版本没有staticweb创建选项let使用letname="HelloWorld";//使用let声明变量,和var类似//1.console.log("name
Java坦克大战068.IO流应用01坦克大战6.0版增加功能:防止敌人坦克重叠运动记录玩家的成绩(累计击毁坦克数),存盘退出记录当时的敌人坦克坐标,存盘退出玩游戏时,可以选择是开新游戏还是继续上局游戏8.1防止敌人坦克重叠运动8.1.1思路分析按照目标坦克的向右下左四种情况分析,每一种情况又分为两种小情况,一种八种情况。8.1.2代码实现8.1.2.1修改处1在EnemyTank类中:增加了增加一个成员属性,EnemyTank可以得到敌人坦克成员的Vector,用于循环比较是否重叠新增一个方法setEnemyTanks,可以将MyPanel的成员VectorenemyTanks=newVec