小编Nim*_*sky的帖子

使用maven运行测试会显示类路径问题

我正在尝试使用Maven在我的春季网络应用程序上运行一些单元测试.该应用程序安装并运行良好,无需测试.

我在我的万无一失的测试报告中收到此错误:

java.lang.NoClassDefFoundError: javax/servlet/ServletException
Run Code Online (Sandbox Code Playgroud)

测试本身看起来像这样:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"file:C:/myProjects/myWebapp/src/main/webapp/WEB-INF/applicationContext-test.xml"})
@Transactional
public class MyTest {
...
Run Code Online (Sandbox Code Playgroud)

以前我收到此错误,但是我从测试应用程序上下文中删除了对安全包的任何引用.得到了这个最新的错误.

这两个问题都是由于我的类路径设置不正确造成的?测试时似乎没有包含maven依赖项?我怎样才能改变这一点,或者我还缺少什么呢?

java junit spring maven

2
推荐指数
1
解决办法
2976
查看次数

查找重复项,在sql中显示每个结果

我想写这样的东西:

select t.id, t.name, from table t
group by t.name having count(t.name) > 1
Run Code Online (Sandbox Code Playgroud)

要产生以下内容:

id      name  count 
904834  jim    2
904835  jim    2
90145   Fred   3
90132   Fred   3
90133   Fred   3
Run Code Online (Sandbox Code Playgroud)

sql aggregate-functions sql-server-2008-r2

2
推荐指数
1
解决办法
9339
查看次数

使用spring rest模板执行get请求并检查返回的状态代码是否正常

它到目前为止我只是向谷歌提交站点地图

RestTemplate restTemplate = new RestTemplate();
HttpEntity<?> responseEntity =  restTemplate.getForEntity("http://www.google.com/webmasters/tools/ping?sitemap={url}", String.class,"http://mySite.com/sitemap.txt);
Run Code Online (Sandbox Code Playgroud)

如何检查返回的服务器HTTP状态?

sitemap rest spring http

2
推荐指数
1
解决办法
9181
查看次数

将用户特定的盐实现为密码消除了对奇怪密码的需求?

许多网站(我的头顶:GMail和我使用的银行)都有一个安全措施,可以选择您所选择的密码; 例如,选择"mypassword"将被归类为不安全.

但是,在我自己的应用程序中,我正在实现基于随机数和其他用户特定字符串的哈希码的用户特定盐.当然,这会使密码分类(如上所述)成为字典攻击的有效威慑手段,这是多余的吗?

我对吗?为什么谷歌和其他大型网站都在为密码分类烦恼?他们不打扰用户特定的盐吗?

security

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

添加Javascript Date对象的天数,也增加月份

看看以前的问题和答案,看起来这应该工作:

var palindrome = new Date('2011-11-11');
var december = new Date('2011-11-11');

december.setDate(palindrome.getDate()+20); 
//should be december, but in fact loops back over to Nov 1st)
Run Code Online (Sandbox Code Playgroud)

我的jsFiddle

有没有一种简单的方法可以确保月份正确递增,或者我错过了一些明显的东西?

javascript date

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

Hibernate级联:对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例

@Entity
@Table(name = "parent")
public final class Parent extends Base {

@OneToOne(cascade = CascadeType.PERSIST, fetch = FetchType.EAGER)
private Person person;
Run Code Online (Sandbox Code Playgroud)

并做(除其他事项外)这个:

Parent parent = new Parent();
Person person = new Person();
parent.setPerson(person);
session.save(parent);
Run Code Online (Sandbox Code Playgroud)

我得到提到的例外?

我以前手动需要调用session.save(person)吗?我是否必须在子类定义中添加级联类型注释(它引用父类)?

或者我错过了其他明显的东西?

我不想使用CascadeType.ALL,因为父母被删除我想保留人(孩子).

两个实体/表都扩展了一个公共Base表:

@MappedSuperclass()
public abstract class Base {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private Integer id;

    public Integer getId() {
    return id;
    }
Run Code Online (Sandbox Code Playgroud)

这种级联类型的效果是否需要?

java orm hibernate

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

Spring mvc 并迭代列表作为表单支持对象

<form:form id="myFRM" action="${myURL}" method="POST" modelAttribute="myPOJO">
<c:set var="i" scope="page" value="0"/>
<c:forEach items="${myPOJO.myLIST}" var="myItem">
  <tr class="ui-state-default" >
  <td><form:checkbox path="myLIST[${i}].aBool" value="true"/></td>
 </tr>
 <c:set var="i" value="${i + 1}" scope="page"/>
</c:forEach>
Run Code Online (Sandbox Code Playgroud)

有一个更好的方法吗 ?

myPOJO 是一个包含列表的类,我纯粹是为了这个目的而创建的 - 有没有办法直接引用列表作为表单支持对象?

java spring spring-mvc

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

返回基于成员变量或映射函数的子列表

我有一个pojo列表 List<Pojo> pojoList; 并pojo.getColour();返回一个Enum实例.

我想这样做:

List<Pojo> newlist = new ArrayList<Pojo>();
for(Pojo pojo:pojoList){
  if(pojo.getColour() == Colour.Red){
    newList.add(pojo);
  }
}
Run Code Online (Sandbox Code Playgroud)

我可以看到自己对其他类型的列表使用类似的函数,而不是重复大量的代码是一种使它成为通用和/或功能的方法?这样我就可以根据不同的规则创建不同类型的子列表?

java generics functional-programming guava

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

一个restful api只使用干净的url - 没有url变量或post变量

一个restful api必须使用get,post,put或delete请求方法.提交的行为和数据完全由uri字符串决定.没有查询参数或发布变量.

这是真的 ?

有效期: http://example.com/foo/84

没有有效:http://example.com/foo/?value=84

有效期:

$.ajax({
  type: 'POST',
  url: "http://example.com/foo/84",
  success: success,
  dataType: dataType
});
Run Code Online (Sandbox Code Playgroud)

没有有效:

$.ajax({
  type: 'POST',
  url: "http://example.com/foo/",
  data: 84,
  success: success,
  dataType: dataType
});
Run Code Online (Sandbox Code Playgroud)

编辑 目前为止的两个答案,相互矛盾.

rest restful-url

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

将跟踪模式设置为cookie以删除附加的会话ID,而不使用web.xml

我正在建立一个完全基于java的spring应用程序,没有xml配置:

public class WebApp extends AbstractAnnotationConfigDispatcherServletInitializer {
    @Override
    protected Class<?>[] getRootConfigClasses() {
        return null;
    }
    @Override
    protected Class<?>[] getServletConfigClasses() {
        return new Class<?>[]{WebMvcConfigurer.class};
    }
    @Override
    protected String[] getServletMappings() {
        return new String[]{"/"};
    }
Run Code Online (Sandbox Code Playgroud)

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = { mypackages })
public class WebMvcConfigurer extends WebMvcConfigurerAdapter {

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/static-assets/");
    }

    @Bean
    public ViewResolver viewResolver() {

        InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
        viewResolver.setViewClass(JstlView.class);
        viewResolver.setPrefix("/WEB-INF/views/");
        viewResolver.setSuffix(".jsp");
        return viewResolver;
    }
Run Code Online (Sandbox Code Playgroud)

我把它放在哪里,曾经在我的web.xml中?

 <session-config>
        <!-- Disables URL-based sessions (no more 'jsessionid' …
Run Code Online (Sandbox Code Playgroud)

java cookies spring spring-mvc

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