我有一个返回String的静态方法,但是如果传入的字符串与几个单词中的一个不匹配,我想抛出异常.下面的代码只是我想要做的一个示例,但我一直得到"非静态变量,这不能从静态上下文引用"消息,我抛出异常的行.基本上,getMsg的返回值必须是有效的,否则程序无法继续,所以我需要一种方法来捕获它.
public static String getMsg(String input) throws UnknownInputException{
if (input.equals("A")){
return "key for A";
}
throw new UnknownInputException("Some Message");
return "unknownInput";
Run Code Online (Sandbox Code Playgroud) 我有一个Jasper报告,它有一个详细信息部分,详细信息部分内部是来自数据库的单个字段,可以打印.因此,如果我的查询返回100行,我会得到100行,这会产生大约10页长的报告,因为10个记录适合页面.
有没有办法可以在列中打印该字段,以便我可以在页面上显示40条记录,而不仅仅是10条记录?(通过4列10列)
如何在H2中使用名为GROUP的列创建表?我看到一个例子,前一段时间使用类似[*]的东西,但我似乎无法找到它.
我有一个要构建并部署到gae的j2ee应用程序,由于某种原因,当URL末尾出现斜杠时,CSS不会加载。
例如:
mysite.com/account 完美运作
但
mysite.com/account/ 加载没有CSS的页面
知道我该如何解决吗?
CSS样式表:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link href="/css/rrstyles.css" rel="stylesheet">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/grayscale.css" rel="stylesheet">
<link href="font-awesome-4.2.0/css/font-awesome.min.css" rel="stylesheet" type="text/css">
<link href="http://fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic" rel="stylesheet" type="text/css">
<link href="http://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" type="text/css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<title>My app</title>
</head>
Run Code Online (Sandbox Code Playgroud)
我将此标头作为单独的jsp包含在内,但是由于某种原因,当我进入/ account而不是/ account /时,它可以工作。我不知道那怎么可能。
我正在构建一个 SpringBoot 应用程序。
我正在使用 Spring Security,并且有一个 UserDetailsService 实现设置:
public class MyUserDetailService implements UserDetailsService {
@Autowired
private UserService userService;
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
org.springframework.security.core.userdetails.User springUser = null;
User user = userService.loadUserByUsername(username);
if(user != null){
List<SimpleGrantedAuthority> authorities = null;
List<Role> roles = user.getRoles();
if(roles != null){
authorities = new ArrayList<>();
for(Role currentRole: roles){
authorities.add(new SimpleGrantedAuthority(currentRole.name()));
}
}
springUser = new org.springframework.security.core.userdetails.User(user.getUsername(), user.getPassword(), authorities);
}
return springUser;
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个服务层,其中包含将用户添加到数据库的方法:
public interface UserService {
public Long addStandardUser(String firstName, String …Run Code Online (Sandbox Code Playgroud) 我无法理解此HTMLUnit异常的含义.当我在网页上的链接上调用click()时会发生这种情况.
Exception class=[net.sourceforge.htmlunit.corejs.javascript.WrappedException]
com.gargoylesoftware.htmlunit.ScriptException: Wrapped com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot read property "offsetWidth" from null (http://webapps6.doc.state.nc.us/opi/scripts/DHTMLmessages.js#95) (javascript url#297)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:534)
at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:432)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:407)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptIfPossible(HtmlPage.java:965)
at com.gargoylesoftware.htmlunit.html.HtmlAnchor.doClickAction(HtmlAnchor.java:87)
at com.gargoylesoftware.htmlunit.html.HtmlAnchor.doClickAction(HtmlAnchor.java:121)
at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1329)
at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1288)
at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1257)
at testapp.TestApp.main(TestApp.java:61)
Caused by: net.sourceforge.htmlunit.corejs.javascript.WrappedException: Wrapped com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot read property "offsetWidth" from null (http://webapps6.doc.state.nc.us.js#95) (javascript url#297)
at net.sourceforge.htmlunit.corejs.javascript.Context.throwAsScriptRuntimeEx(Context.java:1802)
at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke(MemberBox.java:196)
at net.sourceforge.htmlunit.corejs.javascript.FunctionObject.call(FunctionObject.java:479)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1701)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:854)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:164)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:429)
at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:267)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3183)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:175)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$5.doRun(JavaScriptEngine.java:423)
at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:528)
... …Run Code Online (Sandbox Code Playgroud) 我正在进行一项任务,我被告知需要创建一个必须扩展给定类的类(称为ClassB)(称之为ClassA).唯一的问题是ClassA的构造函数内部的代码可能抛出一个异常,所以当我为ClassB创建构造函数时,我试图围绕对super()的调用包装一个try/catch块,但当然,那个因为超级必须是第一个电话,所以不起作用.
我该如何解决这个问题?
如何指定一个表有多个组成主键的列?当我运行这个 sql 语句时,我得到“未知数据类型”(“
CREATE TABLE SH_LEAGUE_CONTACT_TEAM_ROLE(ROLE_NAME VARCHAR NOT NULL,
TEAM_ID INT NOT NULL,
CONTACT_ID INT NOT NULL,
FOREIGN_KEY(TEAM_ID) REFERENCES SH_LEAGUE_TEAM(ID),
FOREIGN_KEY(CONTACT_ID) REFERENCES SH_LEAGUE_CONTACT(ID),
PRIMARY KEY(ROLE_NAME, TEAM_ID, CONTACT_ID));
Run Code Online (Sandbox Code Playgroud) 我一般是 RESTful Web 服务的新手,并且正在学习 Web 服务的 Spring 实现。
我对学习如何在大多数用例中正确使用 ResponseEntity 返回类型特别感兴趣。
我有一个端点:
/myapp/user/{id}
Run Code Online (Sandbox Code Playgroud)
此端点支持GET请求,并将返回 ID 为 的 User 对象的 JSON 格式字符串{id}。我计划将控制器方法注释为生成 JSON。
在有ID的用户{id}存在的情况下,我设置状态为200,在body中设置用户的JSON字符串。
如果不存在具有该 ID 的用户,我将返回一些类似 400 的错误,但我不确定在 ResponseEntity 的主体中设置什么。由于我将端点方法注释为生成 JSON,我是否应该想出一个表示错误的通用 POJO,并将其作为 JSON 返回?
我在运行一些单元测试时遇到了一些有趣的事情。我有以下方法:
private void createSchemaIfNecessary() throws SQLException, IOException{
if(!schemaExists){
try (Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement();) {
statement.execute(getSQLByFileName(GOLF_COURSE_TABLE_CREATION_SCRIPT));
statement.execute(getSQLByFileName(GOLF_COURSE_HOLE_TABLE_CREATION_SCRIPT));
connection.commit();
schemaExists = true;
}
}
}
Run Code Online (Sandbox Code Playgroud)
每个单元测试都会调用此方法来确定是否创建表。该schemaExists变量是一个成员变量。我注意到,当每个测试运行时,有些情况下,即使在到达终点线后schemaExists = true;,下次调用该方法时,schemaExists也会评估为 false。然后我将变量设置为静态,这解决了问题。
当各个单元测试运行时,它们不是都在单元测试类的单个实例的上下文中运行吗?