快速开始

Anyline的核心在于数据库操作,只需在要项目中注入AnylneService即可快速实现数据库操作。

@Autowired
@Qualifier("anyline.service") 
protected AnylineService service; 


如果熟悉maven和Spring MVC(或Struts2),那非常简单.如果什么基础也没有请参考:从0开始抢建环境(spring mvc) 或 从0开始抢建环境(struts2)

如果是基于SpringBoot请参考:SpringBoot环境


以下springmvc,maven环境为例:

  1. 添加依赖
    <!-- 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>


  2. 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>

接下来主要有掌握两点:如何操作数据库及如何接收返回结果

  1. 如何操作数据库

    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()


  2. 如何接收操作后返回结果

    insert,update,delete,execute返回结果只有成功失败或影响行数
    select返回DataRow表示一行,selects返回DataSet<DataRow>表示多行
    DataRow/DataSet上附加了排序,求和,截取,清除空值,按列去重,最大最小值,交集合集差集,分组,行列转换,类SQL筛选(like,eq,in,less,between...),JSON,XML格式转换等常用计算函数
    详细参考:数据结构:DataRow数据结构:DataSet

其他文档