小编mmj*_*ers的帖子

使用jackson将双向JPA实体序列化为JSON

我正在使用Jackson将我的JPA模型序列化为JSON.

我有以下课程:

import com.fasterxml.jackson.annotation.*;
import javax.persistence.*;
import java.util.Set;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonIdentityInfo(generator = ObjectIdGenerators.PropertyGenerator.class)
@Entity
public class Parent {
  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;
  private String name;

  @JsonManagedReference
  @OneToMany(mappedBy = "parent", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
  private Set<Child> children;

  //Getters and setters
}
Run Code Online (Sandbox Code Playgroud)

import com.fasterxml.jackson.annotation.*;
import javax.persistence.*;
import java.util.HashSet;
import java.util.Set;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class)
@Entity
public class Child {
  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  private Long id;
  private String name;

  @JsonBackReference
  @ManyToOne …
Run Code Online (Sandbox Code Playgroud)

java json hibernate jpa jackson

15
推荐指数
2
解决办法
2万
查看次数

angular ui路由器在哈希之前放置查询字符串

我有一个使用外部支付提供商购买积分的应用程序.成功购买后,付款服务提供商会重定向到http://any.url/?orderNr=xxxx&outcome=SUCCESS.这个url是一个使用UI路由器的AngularJS应用程序.路由器的配置如下:

$stateProvider
    .state('dashboard', {
        url: '/dashboard',
        templateUrl: 'views/dashboard.html',
        controller: 'DashboardCtrl',
        isAuthenticated: true
    })
    .state('login', {
        url: '/login',
        templateUrl: 'views/login.html',
        controller: 'LoginCtrl',
        isAuthenticated: false
        });

$urlRouterProvider.otherwise('/login');
Run Code Online (Sandbox Code Playgroud)

因此,当用户返回到root用户http://any.url并且已经登录时,它会重定向到仪表板.付款后就是这种情况,因为您无法在不登录的情况下进行付款.问题是hashbang位于查询字符串之后,因此仪表板的url变为http://any.url/?orderNr=xxxx&outcome=SUCCESS#/dashboard.在DashboardCtrl我无法获取查询字符串使用$location.search().有没有办法让查询字符串成为'角度方式',所以不能通过解析location.href

javascript angularjs angular-ui-router

6
推荐指数
1
解决办法
933
查看次数

spring boot测试中的事务未回滚

我有一个集成测试课UserController.以下课程的内容如下:

// imports...

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@RunWith(SpringRunner.class)
@Transactional
@Rollback
public class UserControllerTests {

    private static final String ENDPOINT = "/v1/users";

    @Autowired
    private TestRestTemplate restTemplate;

    @Autowired
    private ApplicationProperties applicationProperties;

    @Test
    public void test_user_create() {
        String token = login("test", "test");
        HttpEntity<UserRequest> request = createRequest(token, "admin", "admin");
        ResponseEntity<User> response = restTemplate.exchange(ENDPOINT, HttpMethod.POST, request, User.class);

        assertEquals(HttpStatus.CREATED, response.getStatusCode());
    }

    private HttpEntity createRequest(String token) {
        HttpHeaders headers = new HttpHeaders();
        headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));
        headers.set("Authorization", String.format("Bearer %s", token));
        return new HttpEntity(headers);
    }

    private HttpEntity<UserRequest> createRequest(String token, String …
Run Code Online (Sandbox Code Playgroud)

postgresql junit spring spring-jdbc spring-boot

6
推荐指数
1
解决办法
1630
查看次数

AngularJS CORS请求自定义标头

我在使用AngularJS的服务器上启用CORS时遇到问题.我正在使用Angular 1.2.16,这是我的服务器配置:

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "Content-Type, X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, Date, X-Api-Version, X-File-Name, Authorization"
Header set Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header set Access-Control-Allow-Credentials "true"
Run Code Online (Sandbox Code Playgroud)

我可以使用以下请求:

$http.post(configuration.authUrl, {username: 'username', password: 'password'})
    .success(function (data) {
         $cookieStore.put(configuration.sessionName, {
             token: data.authenticationToken,
              user: data.user
         });
    })
    .error(function () {}));
Run Code Online (Sandbox Code Playgroud)

因为此请求不使用自定义标头.

当我之后尝试请求以下内容时: Balance.get()余额为:

angular.module('portalApp')
    .factory('Balance', ['$resource', 'Auth', 'configuration', function ($resource, Auth, configuration) {
        return $resource(configuration.balanceUrl, {}, {
            get: {
                method: 'GET',
                isArray: false,
                headers: {
                    Authorization: Auth.getAuthToken() …
Run Code Online (Sandbox Code Playgroud)

javascript cors angularjs

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

复杂密码的正则表达式

我需要验证需要满足以下规则的密码:

  • 最小长度为8个字符
  • 所有角色都必须是唯一的
  • 至少有一个角色是大写的
  • 至少一个字符是非字母字符,数字或连字符
  • 不应将非字母字符作为前两个或后两个字符

我无法弄清楚如何使用正则表达式验证这一点.有谁能够帮我?

java regex

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