我正在使用Sonar使我的代码更清洁,它指出我正在使用new Integer(1)而不是Integer.valueOf(1).因为它似乎valueOf没有实例化一个新对象所以更加内存友好.怎么valueOf不能实例化一个新对象?它是如何工作的?对所有整数都是如此吗?
我想从Jenkins Declarative Pipeline设置构建名称和描述,但找不到正确的方法.我尝试在管道之后使用环境支架,在代理程序括号中使用节点括号等.我总是遇到语法错误.
我的Jenkinsfile的最后一个版本是这样的:
pipeline {
stages {
stage("Build") {
steps {
echo "Building application..."
bat "%ANT_HOME%/bin/ant.bat clean compile"
currentBuild.name = "MY_VERSION_NUMBER"
currentBuild.description = "MY_PROJECT MY_VERSION_NUMBER"
}
}
stage("Unit Tests") {
steps {
echo "Testing (JUnit)..."
echo "Testing (pitest)..."
bat "%ANT_HOME%/bin/ant.bat run-unit-tests"
}
}
stage("Functional Test") {
steps {
echo "Selenium..."
}
}
stage("Performance Test") {
steps {
echo "JMeter.."
}
}
stage("Quality Analysis") {
steps {
echo "Running SonarQube..."
bat "%ANT_HOME%/bin/ant.bat run-sonarqube-analysis"
}
}
stage("Security Assessment") {
steps { …Run Code Online (Sandbox Code Playgroud) 我对Spring MVC很新,所以请对我很轻松.
我很难理解如何在Spring MVC中实现以下要求:
userList.jsp
<spring:url value="strFormAction" var="/rest/security/user/list" />
<form:form id="userListForm" method="GET" action="${strFormAction}" modelAttribute="user">
<form:select id="strRegionId" path="${strRegionId}" cssClass="form-control" onchange="updateUsersList('1');">
<spring:message var="strSelectRegionLabel" code="select.region" />
<form:option value="0" label="${strSelectRegionLabel}" />
<form:options items="${regions}" itemValue="intId" itemLabel="strNameFr" />
</form:select>
<form:select id="strArchived" path="${strArchived}" cssClass="form-control">
<spring:message var="strYesLabel" code="yes" />
<form:option value="true" label="${strYesLabel}"/>
<spring:message var="strNoLabel" code="no" />
<form:option value="false" label="${strNoLabel}"/>
</form:select>
<table>
...
<c:forEach items="${users}" var="user">
...rows generated here...
</c:forEach>
...
</table>
</form:form>
Run Code Online (Sandbox Code Playgroud)
UserController.java
@RequestMapping(value = "/list", method = RequestMethod.GET)
public String processUserList( @ModelAttribute("user") …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Spring Security 3.2.4 从 Spring 4.0.6 应用程序中的 Active Directory 收集用户权限。
一些细节:
安全配置文件
@Configuration
@EnableWebMvcSecurity
@PropertySource( "classpath:/resources/ldap-config.properties" )
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Value( "${domain}" )
private String strDomain;
@Value( "${ldap.host}" )
private String strHost;
@Value( "${ldap.basedn}" )
private String strBaseDn;
@Value( "${ldap.userdn}" )
private String strUserDn;
@Value( "${ldap.userdn.password}" )
private String strUserDnPassword;
@Bean
public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
return new PropertySourcesPlaceholderConfigurer();
}
@Bean
public ActiveDirectoryGrantedAuthoritiesMapper grantedAuthoritiesMapper() { …Run Code Online (Sandbox Code Playgroud) 当从 pgAdmin(在我的例子中是 1.12.2)在 PostgreSQL 中创建外键约束时,会选中以下选项:
Auto FK index
Run Code Online (Sandbox Code Playgroud)
我想知道一直检查它是否正确,并了解该开销实际上是如何工作的。
例如,以下约束:
ALTER TABLE "user"
ADD CONSTRAINT fk_user_region FOREIGN KEY (intregionid)
REFERENCES region (intid) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION;
Run Code Online (Sandbox Code Playgroud)
创建以下索引:
CREATE INDEX fki_user_region
ON "user"
USING btree
(intregionid);
Run Code Online (Sandbox Code Playgroud)
请注意,它仅在从 pgAdmin创建约束时创建索引。
没有太多关于 pgAdmin 的文档,也没有关于该选项的具体内容。
谢谢你。
我已经使用 Spring Framework 大约 4 年了,现在使用 Spring Boot 已经有几个月了。我的 Spring MVC 应用程序通常部署在 Java EE 容器上,例如 JBoss/WildFly 或 WebLogic。这样做允许我将 JNDI 用于数据源或任何其他涉及机密/密码的敏感数据。这使我的应用程序根据名称“使用”该 JNDI 资源。
现在使用 Spring Boot,特别是对于自包含微服务(嵌入式 tomcat),该信息现在存储在应用程序中(application.properties 和/或 Spring Java Config 类),因此在 Git 中进行版本控制。
这使得这些信息更多地暴露给其他开发人员,我对此不太满意。我也不喜欢在 SonarQube 和 Jenkins 中显示这些细节(通过工作区)。
问题是:是否有针对此特定要求的最佳实践?
* 更新 * 我在这里和那里看到一些关于 Jasypt 使用的文章,但我想知道它是否仍然是一个有效的库,因为上一个稳定版本是 2014 年发布的。
谢谢
我想为除textboxes和textareas之外的任何元素禁用退格键(keycode 8).
这是我尝试的没有成功:
$(":not(input, textarea)").keydown(function(event) {
if (event.keyCode == 8) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
...
$("*:not(input, textarea)").keydown(function(event) {
if (event.keyCode == 8) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
..
$("body").not("input,textarea").keydown(function(event) {
if (event.keyCode == 8) {
event.preventDefault();
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
这个想法是避免用户在没有聚焦在任何文本框或文本区域时意外地击中退格键.
有什么想法吗?
I am new to Spring MVC. I've been searching for few days for a solution to my problem, without any success.
Here is my stack:
我有一个使用 Maven 构建的 Spring 应用程序。Jenkins 声明式管道用于实现 CI/CD。
我希望我的 Jenkinsfile 尽可能通用,利用 POM 及其父 POM 中已经可用的内容。我们使用自定义超级 POM 来集中元数据,例如我们的 Artifactory 存储库 (distributionManagement />)、SonarQube 服务器和一些其他有价值的属性。
我已经readMavenPom().getParent().getGroupId()在用来获取我们公司的标准 groupId 以及readMavenPom().getArtifactId(),readMavenPom().getVersion()和readMavenPom().getPackaging()。
我想访问元数据,以便我可以将它用于将二进制文件发布到 Artifactory 的管道步骤。
查看Parent 类,我没有看到 distributionManagement 标记的任何吸气剂。不过我确实在ModelBase下看到了它。
如何从 Jenkinsfile 访问这些详细信息?
谢谢
我们目前正在购买 Artifactory Pro 的许可证,但我们组织的采购过程需要时间。为了围绕 Artifactory 和 NPM 建立知识以使用 Artifactory,有没有办法使用通用存储库类型将 Artifactory 置于 NPM Registry 前面?
谢谢
spring ×4
jenkins ×2
spring-mvc ×2
artifactory ×1
ejb ×1
hibernate ×1
java ×1
jboss ×1
jquery ×1
keydown ×1
keypress ×1
maven ×1
pgadmin ×1
postgresql ×1
sonarqube ×1
spring-boot ×1