Questions tagged «spring»

Spring框架是用于Java平台上的应用程序开发的开源框架。它的核心是对基于组件的体系结构的丰富支持,目前它具有二十多个高度集成的模块。

8
在Spring Boot中以编程方式配置DataSource
使用Spring Boot,我可以JdbcTemplate使用以下实例化一个: 码: @Autowired private JdbcTemplate jdbcTemplate; 特性: spring.datasource.url=jdbc:postgresql://my_url:my_port/my_other_stuff spring.datasource.username=my_user_name spring.datasource.password=my_password spring.datasource.driver-class-name=org.postgresql.Driver 这将创建一个数据源类: org.apache.tomcat.jdbc.pool.DataSource 如何以编程方式设置DataSource用户名/密码? 我们有一项政策,不要以纯文本格式存储凭据,我必须在工作的地方使用特定的凭据提供程序。

8
使用Spring AOP获取方法参数?
我正在使用Spring AOP并具有以下方面: @Aspect public class LoggingAspect { @Before("execution(* com.mkyong.customer.bo.CustomerBo.addCustomer(..))") public void logBefore(JoinPoint joinPoint) { System.out.println("logBefore() is running!"); System.out.println("hijacked : " + joinPoint.getSignature().getName()); System.out.println("******"); } } 以上方面拦截addCustomer方法执行。addCustomer方法将字符串作为输入。但是我需要在addCustomer方法内部记录传递给方法的输入logBefore。 有可能这样做吗?
74 java  spring 

3
Spring RedirectAttributes:addAttribute()与addFlashAttribute()
到目前为止,我对控制器请求映射方法的理解是,我们可以指定RedirectAttributes参数,并在请求重定向时使用属性填充该参数。 范例: @RequestMapping(value="/hello", method=GET) public String hello(RedirectAttributes redirAttr) { // should I use redirAttr.addAttribute() or redirAttr.addFlashAttribute() here ? // ... return "redirect:/somewhere"; } 然后,重定向属性将在重定向到的目标页面上可用。 但是,RedirectAttributes类具有两种方法: addAttribute() addFlashAttribute() 已经阅读了一段时间的Spring文档,但是我有点迷茫。两者之间的根本区别是什么,我应该如何选择使用哪一个?

18
使用spring-boot-starter-web“找不到可接受的表示形式”
我试图用来spring-boot-starter-web创建一个REST服务来提供Java对象的JSON表示。据我了解,这个boot-starter-web jar应该能够自动处理通过Jackson的JSON转换,但是我却遇到了这个错误。 { "timestamp": 1423693929568, "status": 406, "error": "Not Acceptable", "exception": "org.springframework.web.HttpMediaTypeNotAcceptableException", "message": "Could not find acceptable representation" } 我的控制器是这个... @RestController @RequestMapping(value = "/media") public class MediaController { @RequestMapping(value = "/test", method = RequestMethod.POST) public @ResponseBody UploadResult test(@RequestParam(value="data") final String data) { String value = "hello, test with data [" …

9
我应该在业务层中使用EJB3还是Spring?
我的团队正在开发一种具有Web前端的面向服务的新产品。在讨论我们将使用哪些技术时,我们决定运行JBoss应用程序服务器,Flex前端(可能使用Adobe AIR进行桌面部署)和Web服务以连接客户端和服务器。 在将哪种服务器技术用于我们的业务逻辑方面,我们陷入了僵局。最大的争论是在EJB3和Spring之间,我们最大的担忧是可伸缩性和性能以及代码库的可维护性。 这是我的问题: 支持或反对EJB3 vs Spring的论据是什么? 我希望每个陷阱有什么陷阱? 在哪里可以找到良好的基准信息?

6
为OPTIONS Http方法禁用Spring Security
是否可以为某种HTTP方法禁用Spring Security? 我们有一个Spring REST应用程序,其服务需要在HTTP请求的标头中附加授权令牌。我正在为此编写一个JS客户端,并使用JQuery发送GET / POST请求。该应用程序使用此过滤器代码启用了CORS。 doFilter(....) { HttpServletResponse httpResp = (HttpServletResponse) response; httpResp.setHeader("Access-Control-Allow-Origin", "*"); httpResp.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); httpResp.setHeader("Access-Control-Max-Age", "3600"); Enumeration<String> headersEnum = ((HttpServletRequest) request).getHeaders("Access-Control-Request-Headers"); StringBuilder headers = new StringBuilder(); String delim = ""; while (headersEnum.hasMoreElements()) { headers.append(delim).append(headersEnum.nextElement()); delim = ", "; } httpResp.setHeader("Access-Control-Allow-Headers", headers.toString()); } 但是,当JQuery发送针对CORS的OPTIONS请求时,服务器将以“授权失败”令牌进行响应。显然,OPTIONS请求缺少授权令牌。那么有可能让OPTIONS从Spring Security …

3
从Spring可以注入对ref bean调用方法的结果吗?
从Spring可以注入对ref bean调用方法的结果吗? 我试图将来自两个单独项目的一些剪切/粘贴的代码重构为一个公共类。在其中一个项目中,代码位于一个我称为“ MyClient”的类中,该类是从Spring实例化的。它被注入另一个弹簧实例化的类“ MyRegistry”,然后MyClient类使用该类来查找端点。我真正需要的只是重构类中的终结点String,可以通过Setter对其进行初始化。我真的不能在重构代码中从MyClient依赖MyRegistry。 所以,我的问题是……有没有办法从MyRegistry类中查找的spring注入端点String。因此,我目前有: <bean id="registryService" class="foo.MyRegistry"> ...properties set etc... </bean> <bean id="MyClient" class="foo.MyClient"> <property name="registry" ref="registryService"/> </bean> 但我想拥有(而且我知道这是虚构的Spring语法) <bean id="MyClient" class="foo.MyClient"> <property name="endPoint" value="registryService.getEndPoint('bar')"/> </bean> 其中MyRegistry将具有方法getEndPoint(Stirng endPointName) 从我要实现的目标的角度来看,这是有意义的。请让我知道春季是否可能发生这种情况!
73 java  spring 

7
如何在Spring Batch中从ItemReader访问作业参数?
这是我的一部分job.xml: <job id="foo" job-repository="job-repository"> <step id="bar"> <tasklet transaction-manager="transaction-manager"> <chunk commit-interval="1" reader="foo-reader" writer="foo-writer" /> </tasklet> </step> </job> 这是商品阅读器: import org.springframework.batch.item.ItemReader; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component("foo-reader") public final class MyReader implements ItemReader<MyData> { @Override public MyData read() throws Exception { //... } @Value("#{jobParameters['fileName']}") public void setFileName(final String name) { //... } } …

11
Spring Boot War部署到Tomcat
我试图将Spring Boot应用程序部署到Tomcat,因为我想部署到AWS。我创建了一个WAR文件,但是即使它可见,它似乎也不能在Tomcat上运行。 详细信息: 0。这是我的应用程序: @Configuration @ComponentScan @EnableAutoConfiguration public class App { public static void main(String[] args) { SpringApplication.run(SampleController.class, args); } } @Controller @EnableAutoConfiguration public class SampleController { @RequestMapping("/help") @ResponseBody String home() { String input = "Hi! Please use 'tag','check' and 'close' resources."; return input; } } application.properties具有以下内容: server.port=${port:7777} 在阅读了许多页面和问题解答之后,我在POM中添加了以下内容: http://maven.apache.org/xsd/maven-4.0.0.xsd“> …

4
Spring @Transactional只读传播
我正在尝试使用命令模式允许我的Web层在单个事务的上下文中与Hibernate实体一起工作(从而避免延迟加载异常)。但是,我现在对如何处理交易感到困惑。 我的命令调用带有@Transactional注释的服务层方法。这些服务层方法中的某些方法是只读的,例如@Transactional(readOnly=true)-,而某些方法是读/写的。 我的服务层公开了一个命令处理程序,该命令处理程序代表Web层执行传递给它的命令。 @Transactional public Command handle( Command cmd ) throws CommandException 我假设我对使命令处理程序的handle()方法具有事务性是正确的。这就是造成混乱的地方。如果命令的实现调用了多个服务层方法,则命令处理程序将无法知道命令内调用的操作是只读,读/写还是组合操作在两个中。 我不了解此示例中的传播方式。如果要创建该handle()方法readOnly=true,那么如果该命令随后调用带有注释的服务层方法,会发生什么情况@Transactional(realOnly=false)? 非常感谢您对此有所了解,并欢迎您提出宝贵意见。 安德鲁

3
@ConditionalOnProperty注释的目的是什么?
我刚刚修改了spring boot的配置,遇到了 @ConditionalOnProperty(prefix = "spring.social.", value = "auto-connection-views") 从 org.springframework.boot.autoconfigure.social.TwitterAutoConfiguration @Bean(name = { "connect/twitterConnect", "connect/twitterConnected" }) @ConditionalOnProperty(prefix = "spring.social.", value = "auto-connection-views") public View twitterConnectView() { return new GenericConnectionStatusView("twitter", "Twitter"); } 我不了解此注释的目的。我猜想只有在属性值存在的情况下(例如“ spring.social”,“ auto-connection-views”),才可以使用bean。



1
Spring在没有@Autowired注解的情况下将依赖项注入构造函数中
我正在尝试这个官方Spring教程中的示例,并且对此代码有依赖性:https : //github.com/spring-guides/gs-async-method/tree/master/complete 如果您看一下AppRunner.java 课堂上的代码,我有两个问题: 服务器启动时,如果我在此类的构造函数中放置一个断点,则看起来像在构造函数中,GitHubLookupService是由spring提供的,使用@Service配置bean。但是,@Autowired构造函数上没有注释,那么在世界上该构造函数如何以正确的依赖关系进行调用?应该是null。 这是Spring Boot的自动假设吗? Spring是否看到“私有字段+构造函数参数”,并且假定它应该寻找合适的bean? 是Spring Framework还是Spring boot? 我缺少什么了吗? 如我所记得,必须为bean /服务等提供默认构造函数。为什么此类(AppRunner)没有默认构造函数?Spring如何知道应该使用参数运行构造函数?是因为它是唯一的构造函数吗?

5
在独立的Java应用程序中使用Spring 3 autowire
这是我的代码: public class Main { public static void main(String[] args) { Main p = new Main(); p.start(args); } @Autowired private MyBean myBean; private void start(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("META-INF/config.xml"); System.out.println("my beans method: " + myBean.getStr()); } } @Service public class MyBean { public String getStr() { return …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.