当前位置: 首页 > news >正文

微信公众号内嵌网站开发好看的友情链接代码

微信公众号内嵌网站开发,好看的友情链接代码,怎么做音乐网站,自己怎么做农好产品网站1、起别名 在MyBatis中&#xff0c;<typeAliases>元素用于定义类型别名&#xff0c;它可以将Java类名映射为一个更简短的别名&#xff0c;这样在映射文件中可以直接使用别名而不需要完整的类名。 下面是一个示例&#xff1a; 在mybatis核心配置文件中配置typeAliases标…

1、起别名

在MyBatis中,<typeAliases>元素用于定义类型别名,它可以将Java类名映射为一个更简短的别名,这样在映射文件中可以直接使用别名而不需要完整的类名。

下面是一个示例:

在mybatis核心配置文件中配置typeAliases标签

<typeAliases><typeAlias alias="Acount" type="duhong.entity.Account"/>
</typeAliases>

为duhong.entity.Account类指定了别名Account。

定义了这些别名后,我们可以在映射文件中直接使用这些别名来引用对应的Java类,例如:

<resultMap id="AccountMap" type="Account">

通过使用别名,我们可以简化映射文件中的配置,并提高代码可读性和可维护性。

2、mybatis核心配置文件加载映射文件的其他方式

<package name="duhong.dao"/>

这种声明方式,会使mybatis查找duhong/dao下对应的xml文件,不过这种方式要求xml资源目录与dao层目录一致,而且xml名称要与mapper接口名称一致。

3、#{}与${}的区别

在MyBatis中,#{} 和 ${} 用于处理SQL语句中的参数,但是它们在作用和安全性方面有所不同。

  1. #{} 语法:
    在MyBatis中,当你使用 #{} 来表示一个参数占位符时,MyBatis会在运行时将其替换为一个参数的值,并且会使用预处理语句(PreparedStatement)来处理参数。也就是说,不管参数值是什么,它都会被视为一个字符串值并且正确地转义。
SELECT * FROM some_table WHERE id = #{id}
  1. ${} 语法:
    与 #{} 不同,当你使用 ${} 时,MyBatis会直接将这个位置替换为变量的字面值。也就是说,如果你的变量中包含了特定的SQL关键词或结构,它将不做任何转义直接嵌入SQL语句中。
SELECT * FROM ${tableName} WHERE column = #{value}

测试:

dao层添加接口

//查询所有,按降序排列
List<Account> selectAllByDesc(String key);

mapper中添加查询语句

resultMap id="AccountMap" type="duhong.entity.Account">
<id property="id" column="id"></id>
<result property="accountNumber" column="account_number"></result>
<result property="accountType" column="account_type"></result>
<result property="balance" column="balance"></result>
</resultMap>
<select id="selectAllByDesc" resultMap="AccountMap">select * from account ORDER BY balance ${order};
</select>

添加junit,测试

SqlSession sqlSession= SqlSessionUtil.openSession();@Test
public void test(){AccountDao mapper = sqlSession.getMapper(AccountDao.class);List<Account> account = mapper.selectAllByDesc("DESC");for (Account account1 : account) {System.out.println(account);}}

将${}换成#{},执行出错,原因在于DESC是sql语句的关键字,而#{}会将参数转化为字符串。

4、模糊查询

<select id="selectLikeAll" resultMap="AccountMap">select * from account where account_number like '%${key}%';
</select>
//模糊查询
List<Account> selectLikeAll(String key);
@Test
public void likeTest(){AccountDao accountDao=sqlSession.getMapper(AccountDao.class);List<Account> accounts = accountDao.selectLikeAll("1");System.out.println(accounts);
}

同样直接使用#{}也会出错,#{}在' '中并不会被赋值

改进方式sql中使用concat拼接字符串

<select id="selectLikeAll" resultMap="AccountMap">select * from account where account_number like concat('%',#{key},'%');
</select>
http://www.rdtb.cn/news/13316.html

相关文章:

  • 做运营必知网站网络销售技巧
  • 如何做网站自适应企业网站推广方案的策划
  • 彩票网站开发系统如何搭建友情链接属于免费推广吗
  • 电商b2b平台seo整站优化新站快速排名
  • 旅游网页设计模板图凡科上海有什么seo公司
  • 找网站建设工作室靠谱吗网络营销师工作内容
  • 做企业网站需要准备什么海城seo网站排名优化推广
  • 免费的网站登录模板下载app推广代理
  • 检察内网门户网站建设百度搜索风云榜下载
  • 如何做网站app爱站网长尾关键词挖掘
  • 理县网站建设公司网站搭建一般要多少钱
  • 网站开发思路软文代写接单平台
  • 建立网站该怎样做网络服务器图片
  • 深远互动 网站建设搜索引擎营销的概念及特点
  • 中国菲律宾汇率换算百度seo算法
  • 帮一个企业做网站流程sem工资
  • 视频剪辑制作公司个人seo外包
  • wordpress显示文章内容seo自学网视频教程
  • 外贸cms 网站网站的建设流程
  • 怎么搭建视频网站2345浏览器网页版
  • 重庆专业微信网站制作nba交易最新消息
  • 网站什么做女生学电子商务后悔了
  • 古风网站建设推广优化师
  • 做网站文字编辑工作好不好搜索引擎营销概念
  • 桓台响应式网站建设网络营销典型案例
  • python做网站比php朋友圈产品推广文案
  • 如何与知名网站做友情链接整合营销传播的六种方法
  • 进出口贸易网优化设计答案六年级上册语文
  • 贵州省交通建设工程质量监督局网站游戏优化是什么意思
  • 云南昆明做网站百度资讯