小编Dai*_*Lea的帖子

具有路径变量和ant匹配器的Spring Security自定义方法

我使用java配置的spring boot,web MVC和spring security.我的网址是"RESTful",并希望添加自定义授权方法.

例如:

.antMatchers("/path/*/**").access("@myBean.authorise()")
Run Code Online (Sandbox Code Playgroud)

我希望实现这样的目标:

.antMatchers("/path/{token}/**").access("@myBean.authorise(token)")
Run Code Online (Sandbox Code Playgroud)

我明白我可以通过HttpServletRequest并手动剥离路径,但我想避免这种情况!也不太热衷于方法级别的安全性,宁愿将配置保存在一个地方,因为我有很多控制器.

谢谢!

java spring spring-mvc spring-security

9
推荐指数
1
解决办法
3642
查看次数

将数据从一个数据库复制到另一个数据库时,如何解决org.hibernate.StaleObjectStateException?

我正在尝试将数据从一个数据库复制到另一个数据库.一切正常,直到源数据库中的一行被修改(下面的堆栈跟踪).向目标数据库添加新行按预期工作.

我有一个由以下bean组成的每个数据库连接(mysql和hsqldb)的上下文文件:

    <bean id="mysqlDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${mysql.driver}" />
        <property name="url" value="${mysql.url}" />
        <property name="username" value="${mysql.username}" />
        <property name="password" value="${mysql.password}" />
    </bean>

    <bean id="mysqlTransactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="mysqlEntityManagerFactory" />
        <property name="dataSource" ref="mysqlDataSource" />
    </bean>

    <bean id="mysqlEntityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource"          ref="mysqlDataSource" />
        <property name="jpaVendorAdapter"    ref="mysqlVendorAdaptor" />
        <property name="packagesToScan"      value="my.packages.to.scan"/>
    </bean>

    <bean id="mysqlEntityManager" class="org.springframework.orm.jpa.support.SharedEntityManagerBean">
        <property name="entityManagerFactory" ref="mysqlEntityManagerFactory"/>
    </bean>

    <bean id="mysqlVendorAdaptor" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" >
        <property name="showSql" value="true" />
        <property name="generateDdl" value="true" />
        <property name="databasePlatform" value="${mysql.dialect}" />
    </bean>
Run Code Online (Sandbox Code Playgroud)

在我的@ServiceJpaRepository为每个数据库连接创建一个:

@Autowired
private …
Run Code Online (Sandbox Code Playgroud)

java database spring hibernate jpa

7
推荐指数
1
解决办法
3万
查看次数

标签 统计

java ×2

spring ×2

database ×1

hibernate ×1

jpa ×1

spring-mvc ×1

spring-security ×1