JavaEE
2、settings.xml
·5193 字·11 分钟·
loading
·
loading
Java
JavaEE
Maven
settings.xml # Maven有一个settings.xml配置文件,它是用来设置 Maven 参数的配置文件,settings.xml 中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。
5、常用插件
·2079 字·5 分钟·
loading
·
loading
Java
JavaEE
Maven
maven-jar-plugin # 默认maven打包的结果没有指定mainClass,所以使用java -jar命令会显示xxx.jar中没有主清单属性,使用此插件可以指定mainClass
4、数据库连接池
·4486 字·9 分钟·
loading
·
loading
Java
JavaEE
Mybatis
数据库连接池 # 在原生的JDBC中,我们通常是使用对应的数据库驱动例如com.mysql.jdbc.Driver,获取一个java.sql.Connection对象进行操作(创建连接、执行SQL、关闭连接),所有的压力都在这一个Connection上。
2、对数据库的操作
·3106 字·7 分钟·
loading
·
loading
Java
JavaEE
Mybatis
添加、删除、修改 # //GoodTypeDaoMapper接口 //1、增加 boolean addOne(GoodType goodType); //2、删除 boolean removeById(int tid); //3、修改 boolean updateNameById(String tname,int tid); <!--GoodTypeDaoMapper.xml映射文件--> <!--1、增加--> <insert id="addOne"> insert into goodtype (tid,tname,state,remarks) values (#{tid},#{tname},#{state},#{remarks}) </insert> <!--2、删除--> <delete id="addOne"> delete from goodtype where tid=#{tid} </delete> <!--3、修改--> <update id="updateNameById"> update goodtype set tname=#{arg0} where tid=#{arg1} </update> 添加数据并获取主键值 # 方式一 # <insert id="add" useGenneratedKeys="true" keyColumn="tid" keyProperty="tid"> insert into goodtype (tname,state,remarks) values (#{tname},#{state},#{remarks}) </insert> 方式二 # <insert id="add"> <selectKey keyColumn="tid" keyProperty="tid" resultType="int" order="AFTER"> select last_insert_id() </selectKey> insert into goodtype (tname,state,remarks) values (#{tname},#{state},#{remarks}) </insert> 查询 # 简单查询 # //GoodTypeDaoMapper接口 List<GoodType> findAll(); <!--UserDao.xml:--> <select id="findAll" resultType="entity.GoodType"> select * from goodtype </select> 多表查询 # 一对一 # 根据商品id查询出商品Goods信息,以及对应的商品类型GoodType信息
1、Mybatis
·6902 字·14 分钟·
loading
·
loading
Java
JavaEE
Mybatis
Mybatis # Mybatis是一个优秀的基于java的持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。 iBATIS一词来源于internet和abatis的组合,是一个基于Java的持久层框架。 iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO) 基于ORM(对象关系映射)思想的一个框架 MyBatis 是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。 官网地址:https://blog.mybatis.org/ 优点 # 简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件;易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现 灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求 解除sql与程序代码的耦合:通过提供DAO层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性 提供映射标签,支持对象与数据库的orm字段关系映射 提供对象关系映射标签,支持对象关系组建维护 提供xml标签,支持编写动态sql 缺点 # 编写sql语句工作量大,尤其字段多,关联表多 sql语句依赖于数据库,导致数据库一致性差,不可以更换数据库 框架还是比较简陋,功能尚有缺失,虽然简化了数据绑定代码,但是整个底层数据库查询实际还是要自己写,工作量大,而且不太容易适应快速数据库修改 二级缓存机制不佳 简单使用 # 1、导入mybatis依赖 # <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.11</version> </dependency> 2、导入目标数据库的对应驱动 # 目前使用的是mysql5.7.28
4、plugins
·3437 字·7 分钟·
loading
·
loading
Java
JavaEE
Maven
Maven 的生命周期是抽象的,这意味着生命周期以及生命周期中每个phase(阶段)本身不做任何实际的工作,实际的任务都是依靠插件来完成。每个阶段都可以绑定一个或多个插件目标,Maven 为大多数构建步骤编写并绑定了默认插件。当用户有特殊需要的时候,可以自己配置插件来定制构建行为,甚至可以使用自己编写的 Maven 插件。
4、JSP
·3148 字·7 分钟·
loading
·
loading
Java
JavaEE
JavaWeb
JSP # JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。
3、Session
·870 字·2 分钟·
loading
·
loading
Java
JavaEE
Shiro
生命周期 # 注意:这个Session不是Tomcat的那个,而是Shrio提供的一个Session
3、Servlet
·5336 字·11 分钟·
loading
·
loading
Java
JavaEE
JavaWeb
Servlet # Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容,它是由Sun公司(现在是Oracle公司)开发的,作为Java Servlet API的一部分,包含在Java EE(Enterprise Edition)规范中
1、Maven
·3884 字·8 分钟·
loading
·
loading
Java
JavaEE
Maven
Maven # Maven 是一个项目管理工具,它包含了一个项目对象模型 (POM: Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段中插件(plugin)目标的逻辑 。