`
huangshenji
  • 浏览: 10029 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

batis+acegi实现的动态权限控制

阅读更多
前段时间把网上提供的于hibernate+acegi的基础i改成ibatis+acegi,共享给大家


数据库表


create table USER_INFO(
id int not null auto_increment,       
        active_flag int not null default 0,
        last_update_date timestamp,
        create_date datetime not null,
        username varchar(50) not null,
        truename varchar(50) not null,
        email varchar(50) not null,
        nation int not null default 0,
        birthday date not null,
        sex int not null default 0,
        idcard varchar(18) not null check (idcard.lan in (16,18)),
        tel1 varchar(15),
        tel2 varchar(15),
        address varchar(150),
        password varchar(50) not null,
auth_flag int not null default 0,
        PRIMARY KEY (id),
        UNIQUE KEY  (username)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;



create table USER_LOGIN(
id int not null auto_increment,
        active_flag int not null default 0,
        last_update_date timestamp,
        create_date datetime not null,
        uid int not null,
        ip varchar(16) not null,
        mac varchar(20) not null,
        PRIMARY KEY (id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;



create table USER_SECURITY(
id int not null auto_increment,
        active_flag int not null default 0,
        last_update_date timestamp,
        create_date datetime not null,      
        ip_flag int not null,
        ip varchar(15),
        mac_flag int not null default 0,
        mac varchar(15),
        uid int not null,
        PRIMARY KEY (id),
        UNIQUE KEY  (uid)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE ROLE(
   id int not null auto_increment,
   active_flag int not null default 0,
   last_update_date timestamp,
   create_date datetime not null,
   role_name varchar(50) not null,
   role_desc varchar(50),
   roleState int(11) NOT NULL default 0,
   PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE AUTHTYPE (
  id int(11) NOT NULL auto_increment,
  active_flag int not null default 0,
  last_update_date timestamp,
  create_date datetime not null,
  typeName varchar(20) NOT NULL,
  typeState int(11) NOT NULL default 0,
  PRIMARY KEY  (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE AUTHORITIES (
  id int(11) NOT NULL auto_increment,
  active_flag int not null default 0,
  last_update_date timestamp,
  create_date datetime not null,
  authProtected varchar(100) NOT NULL,
  authNote varchar(200) default NULL,
  authType int(2) NOT NULL,
  authState int(1) NOT NULL,
  PRIMARY KEY  (id),
  KEY FK_authorities (authType),
  CONSTRAINT authorities_ibfk_1 FOREIGN KEY (authType) REFERENCES authtype (id) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;



CREATE TABLE ROLE_AUTH (
  id int(11) NOT NULL auto_increment,
  active_flag int not null default 0,
  last_update_date timestamp,
  create_date datetime not null,
  rid int(11) NOT NULL,
  aid int(11) NOT NULL,
  PRIMARY KEY  (id),
  KEY FK_role_auth (rid),
  KEY FK_auth_role (aid),
  CONSTRAINT role_auth_ibfk_1 FOREIGN KEY (rid) REFERENCES role (id) ON UPDATE CASCADE,
  CONSTRAINT role_auth_ibfk_2 FOREIGN KEY (aid) REFERENCES authorities (id) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


CREATE TABLE USER_ROLE (
  id int(11) NOT NULL auto_increment,
  active_flag int not null default 0,
  last_update_date timestamp,
  create_date datetime not null,
  uid int(11) NOT NULL,
  rid int(11) NOT NULL,
  PRIMARY KEY  (id),
  KEY FK_user_role (uid),
  KEY FK_role_users (rid),
  CONSTRAINT user_role_ibfk_1 FOREIGN KEY (uid) REFERENCES USER_INFO (id) ON UPDATE CASCADE,
  CONSTRAINT user_role_ibfk_2 FOREIGN KEY (rid) REFERENCES role (id) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

src在上传的包里
分享到:
评论

相关推荐

    Java搭建batis+Spring4+maven

    本项目“Java搭建batis+Spring4+maven”是一个精心配置好的开发环境,它整合了MyBatis、Spring4和Maven这三个关键组件,为开发者提供了一个快速开发的基础架构。 首先,MyBatis是一个优秀的持久层框架,它解决了...

    struts1.2+batis+spring2.0+oracle10g集成例子

    首先,Struts1.2是Apache基金会的一个开源框架,主要用于控制Web应用程序的流程,它实现了MVC设计模式,使得业务逻辑和表现层分离,提高了代码的可维护性和可重用性。在Struts1.2中,ActionServlet是核心控制器,...

    struts1.2+batis+spring2.0+oracle10g集成例子(增加了分页功能)

    它的主要任务是负责控制应用程序的流程,将用户请求转发到相应的Action,然后由Action处理业务逻辑并返回结果。Struts1.2提供了强大的表单处理和国际化支持,但在现代Web开发中已经被Struts2或Spring MVC等更先进的...

    spring mvc+my batis+dwz

    MyBatis还支持动态SQL,可以方便地处理复杂的查询条件。此外,MyBatis与Spring框架集成良好,可以实现事务管理,提供了一种便捷的数据访问解决方案。 【DWZ】是一个JavaScript和CSS的前端框架,专为开发响应式Web...

    ssmspringboot项目

    springboot整合ssm项目+batis+打包docker到服务器上面。

    spring MVC spring my batis SSM框架工程

    AOP则用于实现如日志记录、权限控制等横切关注点,使代码更加整洁。Spring的事务管理支持编程式和声明式两种方式,能够确保数据操作的原子性和一致性。 MyBatis是一个轻量级的持久层框架,它将SQL语句与Java代码...

    My|Batis框架的入门例子

    MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。在Eclipse这个流行的Java集成开发环境中,...这个基础例子为你进一步学习MyBatis的高级特性,如缓存、事务控制、动态SQL等奠定了基础。

    batis详细代码

    在IT行业中,Batis是一个非常流行的Java持久层框架,它简化了数据库操作,使得开发者能够更专注于SQL本身,而不是繁琐的JDBC代码。本压缩包文件"batis详细代码"提供了包含Web项目的Batis实例,无需预先导入数据库...

    batis官方资源包.zip

    此外,MyBatis的动态SQL功能非常强大,可以通过条件标签来生成动态的SQL语句,避免了大量硬编码SQL的痛苦。同时,MyBatis支持结果映射,可以自动将查询结果转化为Java对象,极大地提高了开发效率。 在实际项目中,...

    mybatis 动态sql及参数传递

    动态标签 if标签 where标签 choose、when、otherwise 标签 set标签 trim标签 forEach标签 参数传递 单个参数传递 多个参数传递 传入单个实体(JavaBean/Map) 传入多个实体 传入集合 使用场景 在实际开发过程中,我们...

    batis 配置文件

    事务管理器控制事务的开始、提交和回滚。在JDBC环境下,通常使用`JdbcTransactionFactory`;而在使用连接池时,通常选择`ManagedTransactionFactory`。 7. **`mappers`元素**: `mappers`元素用于指定映射文件的...

    springMVC batis

    通过Spring的AOP功能,还可以实现如日志记录、权限控制等跨切面的关注点。 在"ssm-master"这个项目中,开发者通常会创建以下文件和目录结构: - src/main/java:存放Java源代码,包括Controller、Service、DAO等类...

    基于深度学习并实战 spring boot 的项目,成功集成batis-aop(AOP自定义多数据源).zip

    【资源说明】 1、该资源包括项目的全部源码,...基于深度学习并实战 spring boot 的项目,成功集成batis-aop(AOP自定义多数据源)、multi-datasource-mybatis(使用Mybatis集成多数据源)、quartz(定时任务)、rabbit.zip

    基于深度学习并实战 spring boot 的项目合集(已集成batis-aop、使用Mybatis集成多数据源等).zip

    基于深度学习并实战 spring boot 的项目合集(已集成batis-aop(AOP自定义多数据源)、multi-datasource-mybatis(使用Mybatis集成多数据源)、quartz(定时任务)等).zip基于深度学习并实战 spring boot 的项目合集(已...

    酒店管理系统+Java Web、MySQL、spring、springmvc、my batis框架技术

    酒店管理系统基于Java Web进行开发,运用ecilpse开发环境、Java编程语言、MySQL数据库技术,实现酒店的信息管理功能。需要的可下载,调试对应的代码。适合人群:具备一定的编程能力,大学生适用。

    ibatis3.0中文文档和英文文档

    编程式事务通过SqlSession的beginTransaction、commit和rollback方法控制;声明式事务通常结合Spring进行配置。 9. **异常处理**:Ibatis提供了SqlException和DataAccessException两个主要的异常类,帮助开发者快速...

    BATIS介绍.

    ### iBATIS简介 ...与传统的ORM相比,iBATIS提供了更多的灵活性和控制权,特别是在处理复杂的SQL查询时。然而,这也意味着开发者需要对SQL语法有更深的理解,并且可能需要花费更多的时间来编写和维护映射文件。

    mybatis两个重要的dtd文件 batis-3-config.dtd mybatis-3-mapper.dtd

    在MyBatis中,`batis-3-config.dtd` 和 `mybatis-3-mapper.dtd` 是两个至关重要的DTD(Document Type Definition)文件,它们定义了MyBatis配置文件和映射文件的结构和语法。 首先,我们来看`batis-3-config.dtd`。...

Global site tag (gtag.js) - Google Analytics