-
配置Java对象属性与查询结果集中列名对应关系 1.resultMap标签 <resultMap type="User" id="UserResult">//type是javabean的完整类名,id要唯一 <id column="id" jdbcType="INTEGER" property="id"/>//id:主键,column:数据的字段名,jdbcType:数据字段的类型,property:实体的属性名 ... </resultMap>查看全部
-
定义SQL语句 1.select标签 <select id="find" parameterType="long" resultMap="UserResult">//id:定义该标签的id,以便dao层的调用;parameterType:传参类型;resultMap:返回的结果集 SELECT * FROM user WHERE id = #{id:INTEGER} </select> 2.delete标签(同上) 3.update标签(同上) 4.insert标签(同上)查看全部
-
SQLSession 的作用和使用方法查看全部
-
常用标签查看全部
-
一对多关系的配置 //CommandService.java /** * 根据指令查询消息列表 */ public String queryByCommand(String command){ CommandDao commandDao=new CommandDao(); List<Command> commandList=new ArrayList<Command>(); if(Iconst.HELP_COMMAND.equals(command)){ StringBuffer result=new StringBuffer(); commandList=commandDao.queryCommandList(null, null); for (int i = 0; i < commandList.size(); i++) { if(1!=0){ result.append("<br/>"); } result.append("回复["+ commandList.get(i).getName() + "]可以查看"+commandList.get(i).getDescription()); } return result.toString(); } commandList=commandDao.queryCommandList(command, null); if(commandList.size()>0){ /** * 随机获取一条内容 */ List<CommandContent> contentList=commandList.get(0).getContentList(); int i=new Random().nextInt(contentList.size()); return contentList.get(i).getContent(); } return Iconst.NO_MATCHING_CONTENT; }查看全部
-
一对多关系的配置 //主表:Command.xml <resultMap type="com.imooc.bean.Command" id="CommandResult"> <id column="C_ID" jdbcType="INTEGER" property="id"/>//两个表中都有ID属性时,别名来代替 <result column="NAME" jdbcType="VARCHAR" property="name"/> <result column="DESCRIPTION" jdbcType="VARCHAR" property="description"/> <collection property="contentList" resultMap="CommandContent.CommandContentResult"></collection>//在xml的配置文件中配置对应关系 </resultMap> <select id="queryCommandList" parameterType="com.imooc.bean.Command" resultMap="CommandResult"> select a.ID C_ID,a.NAME,a.DESCRIPTION,b.ID,b.CONTENT,b.COMMAND_ID from COMMAND a left join COMMAND_CONTENT b on a.ID=b.COMMAND_ID <where> <if test="name != null and !"".equals(name.trim())"> and a.NAME=#{name}</if> <if test="description != null and !"".equals(description.trim())"> and a.DESCRIPTION like '%' #{description} '%'</if> </where> </select>查看全部
-
一对多关系的配置 一个指令对应多条不同回复内容 一对多的关系,一般拆分成两张表,以减少了冗余数据 ①表指令表:主键、name、description ②表指令表对应的内容:主键、内容、指令表的主键(command_id) 这样,一个指定就可以在②表找到所对应的多条内容 两种结构: ——————————①一条指令回复一组内容 ——————————②一条指令回复一组中的一个内容,在java代码中随机回复一条即可 dao层内容: ——————————————————————列表查询 ——————————————————————页面初始化 ——————————————————————微信对话查看全部
-
Mybatis中的OGML表达式 1查看全部
-
Mybatis中的OGML表达式 1 1、Map可以直接用key.属性名取值 2、foreach标签不属于OGML查看全部
-
c:forEach varStatus属性的相关用法 current当前这次迭代的(集合中的)项 index当前这次迭代从 0 开始的迭代索引 count当前这次迭代从 1 开始的迭代计数 first用来表明当前这轮迭代是否为第一次迭代的标志 last用来表明当前这轮迭代是否为最后一次迭代的标志 begin属性值 end属性值 step属性值查看全部
-
第四章练习代码:http://pan.baidu.com/s/1kUIRClp查看全部
-
修改文件名和变量名 选择 -> 右击 -> Refacter -> Rename //可以将包含此文件名的所有文件都做出修改;快捷键:Alt+Shift+R /** * 根据指令查询消息列表 */ public String queryMessageByCommand(String command){ MessageDao messageDao=new MessageDao(); List<Message> messageList=new ArrayList<Message>(); if(Iconst.HELP_COMMAND.equals(command)){ StringBuffer result=new StringBuffer(); messageList=messageDao.queryMessageList(null, null); for (int i = 0; i < messageList.size(); i++) { if(1!=0){ result.append("<br/>"); } result.append("回复["+ messageList.get(i).getCommand() + "]可以查看"+messageList.get(i).getDescription()); } return result.toString(); } messageList=messageDao.queryMessageList(command, null); if(messageList.size()>0){ return messageList.get(0).getContent(); } return Iconst.NO_MATCHING_CONTENT; }查看全部
-
Eclipse中直接使用jstl标签,会报错, 而在 Myeclipse中新建web工程,新建jsp页面可以直接使用jstl标签,因为在新建工程时Myeclipse自动导入了使用jstl所需的jar包。 在Eclipse中使用jstl,需要: 1、导入jstl.jar、standard.jar 2个jar包; 2、在WEB-INF下拷入c.tld文件; 3、web.xml加上如下配置 <jsp-config> <taglib> <taglib-uri>http://java.sun.com/jstl/core</taglib-uri> <taglib-location>/WEB-INF/c.tld</taglib-location> </taglib> </jsp-config> 经过这几步就可以正常使用jstl标签了查看全部
-
标签总结查看全部
-
Mybatis之SqlSession查看全部
举报
0/150
提交
取消