快速开始
Anyline的核心在于数据库操作,只需在要项目中注入AnylneService即可快速实现数据库操作。
@Autowired @Qualifier("anyline.service") protected AnylineService service;
如果熟悉maven和Spring MVC(或Struts2),那非常简单.如果什么基础也没有请参考:从0开始抢建环境(spring mvc) 或 从0开始抢建环境(struts2)
如果是基于SpringBoot请参考:SpringBoot环境
以下springmvc,maven环境为例:
-
添加依赖
<!-- Spring MVC --> <dependency> <groupId>org.anyline</groupId> <artifactId>anyline-mvc</artifactId> <version>${anyline.version}</version> </dependency> <!-- MySQL 根据实际情况 --> <dependency> <groupId>org.anyline</groupId> <artifactId>anyline-jdbc-mysql</artifactId> <version>${anyline.version}</version> </dependency>
实际开始项目一般会有一个*-parent.xml的pom来维护版本号,为了方便搭建环境提供几个常用的依赖
<!--集成springmvc 以及druid--> <parent> <groupId>org.anyline</groupId> <artifactId>anyline-start-mvc</artifactId> <version>8.3.7-SNAPSHOT</version> </parent> <!--集成在anyline-start-mvc基础上添加JSP环境--> <parent> <groupId>org.anyline</groupId> <artifactId>anyline-start-mvc-jsp</artifactId> <version>8.3.7-SNAPSHOT</version> </parent> <!--集成在anyline-start-mvc-jsp基础上添加mysql 前后端不分离的项目经常用这个--> <parent> <groupId>org.anyline</groupId> <artifactId>anyline-start-mvc-jsp-mysql</artifactId> <version>8.3.7-SNAPSHOT</version> </parent> <!--集成在anyline-start-mvc基础上添加mysql 前后端分离的项目一般用这个--> <parent> <groupId>org.anyline</groupId> <artifactId>anyline-start-mvc-mysql</artifactId> <version>8.3.7-SNAPSHOT</version> </parent>
-
Spring MVC配置文件
<!--扫描org.anyline包--> <context:component-scan base-package="org.anyline"></context:component-scan> <!--注册一个springjdbc模板 根据实际情况注入数据源--> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="ds" /> </bean>
接下来主要有掌握两点:如何操作数据库及如何接收返回结果
-
如何操作数据库
AnylineService(配合AnylineDao)提供了常用的数据库操作接口,其中insert,update,delete,execute比较简单也容易理解
而select操作相对灵活的多,灵活性主要体现在其参数ConfigStore的构造方式上,通过ConfigStore可以实现非常复杂的查询操作public DataSet selects(String src, ConfigStore configs, String ... conditions);
在实际开发过程中,通常是用BaseController继承tAnylineController
AnylineController中已经注入AnylineService serive,并重载了大量config函数用来自动构造ConfigStore
更详细的操作参考:AnylineService 与condition()
-
如何接收操作后返回结果
insert,update,delete,execute返回结果只有成功失败或影响行数
select返回DataRow表示一行,selects返回DataSet<DataRow>表示多行
DataRow/DataSet上附加了排序,求和,截取,清除空值,按列去重,最大最小值,交集合集差集,分组,行列转换,类SQL筛选(like,eq,in,less,between...),JSON,XML格式转换等常用计算函数
详细参考:数据结构:DataRow、数据结构:DataSet