更新时间: 试题数量: 购买人数: 提供作者:

有效期: 个月

章节介绍: 共有个章节

收藏
搜索
题库预览
必须结合案例说明。 (1)持久对象层(也称持久层或持久化层):该层由若干持久化类(实体类)组成。 在案例中我们使用mpper.xml配置了持久层,在持久层使用封装好的sql语句可以直接对java对象操作,如<selsect>、<insert>、<update> 在更新语句中我们使用了<set>、<if>根据条件决定是否更新,最后根据服务层的请求执行相应的操作 (2)业务逻辑层(Service层):该层由若干Service接口和实现类组成。在本系统中,业务逻辑层的接口统一使用Service结尾,其实现类名称统一在接口名后加Impl。业务逻辑层主要用于实现系统的业务逻辑。 在案例中使用了@Service注解标记该类为一个服务类;使用@Autowired用于自动注入UersMapper,使得服务层可以调用持久层的方法;在服务层中对持久层的的方法来操作数据库,并将结果返回给控制层; (3)Web表现层:该层主要包括Sprin 在该案例中使用了@Controller注解,标记该类为一个控制器类;开头使用@RequestMapping("/doctor/")注释表明一下路径都是基于该路径;使用@Autowired注释调用服务层的方法;并且通过get或则post请求接收用户的Http请求然后将参数绑定到方法的参数中,并转发给服务层进行业务处理,最后得到服务层处理结果,返回相应的试图和数据; 注解补全题复习范围(16 分) 注解 解释 @Select 用于定义查询操作的 SQL 语句,通常用在 Mapper 接口的方法上,告诉 MyBatis 这个方法需要执行一个查询操作。例如:@Select("SELECT * FROM users WHER @Insert 用于定义插入操作的 SQL 语句,用在 Mapper 接口的方法上,表明该方法要执行插入操作。如: @Insert("INSERT INTO users(name, ag @Updat @Delet @Delete("DELET @Component 通用的组件标记,表明一个类是 Sprin @Repository 用于标记数据访问层( DAO )的组件,是 @Component 的特化版本,Sprin @Servic @Controller 用于标记表示层(MV @RestController 组合了 @Controller 和 @ResponseBody ,用于 RESTful We @Autowire @Qualifier 当存在多个相同类型的 Bean 时,用于指定哪一个 Bean 被注入。 注解 解释 @Valu @RequestMappin @GetMappin @PutMappin 、 、 、 分别映射 GET、POST、PUT、DELET @PathVariabl @RequestParam 用于绑定查询参数。 @RequestBody 用于将请求体中的 JSON 或 XML 数据绑定到 Jav @ResponseBody 用于处理请求体和响应体的数据,将方法的返回值直接写入 HTTP 响应体。 编程题复习范围(18 分) MyBatis 编写一个功能(增、删、改、查) 用xml 的方式,9 分配置文件 3 分(不接受注解方式),接口3 分,测试代码 3 分 查询所有医生: <select id="getAllCount" resultType="int"> SELECT COUNT(*) FROM users </select> 增加医生: <insert id="insertUsers" parameterType="users" useGeneratedKeys="true" keyProperty="id"> INSERT INTO users(name, phone, email, passwor </insert> 更新医生: <updat UPDAT <set> <i <i <i <i </set> WHER </update> 删除医生: <delet DELET WHER </delete> 接口3 分; 删除医生:int deleteUsersById(Integer i 增加医生: int insertUsers(Users users); 更新医生: int updateUsers(Users users);/ 查询医生 List<Users> findAll(); 测试代码 3 分 SqlSession sqlSession; try{ SqlSeesion=sqlSessionFactory.openSession(tru UserInfoMapper mapper = sqlSession.getMapper(UserInfoMapper.class); List<UserInfo> list = mapper.findAll(); Sprin 配置文件 3 分(不接受注解方式),Bean3 分,测试代码 3 分 使用setter的方式实现依赖注入 publi privat @Overrid return "User2{" + "id=" + i ", name='" + nam ", password='" + passwor '}'; } publi return id; } publi this.i } } 使用构造方法的方式实现依赖注入 privat privat privat publi this.i this.passwor this.nam } @Overrid return "User1{" + "id=" + i ", name='" + nam ", password='" + passwor '}'; } 配置文件 3 分(不接受注解方式)Bean3 分; <bean id="user1" class="cn.edu.ccst.spring01.User1"> <constructor-ar <constructor-ar <constructor-ar </bean> </bean> 测试代码 3 分 publi @Test publi ApplicationContext context = new ClassPathXmlApplicationContext( "applicationContext.xml" ); User1 u1 = (User1) context.getBean("user1"); System.out.println(u1.toString()); } }