タグ付けされた質問 「spring」

Spring Frameworkは、Javaプラットフォームでのアプリケーション開発のためのオープンソースフレームワークです。中核となるのは、コンポーネントベースのアーキテクチャに対する豊富なサポートであり、現在、20を超える高度に統合されたモジュールを備えています。


5
同じインターフェースを実装する2つのBeanの自動配線-デフォルトのBeanを自動配線に設定する方法
バックグラウンド: Spring 2.5 / Java / Tomcatアプリケーションがあります。アプリケーション全体で多くの場所で使用されている次のBeanがあります public class HibernateDeviceDao implements DeviceDao そして次の新しいBean: public class JdbcDeviceDao implements DeviceDao 最初のBeanはそのように構成されています(パッケージ内のすべてのBeanが含まれています) <context:component-scan base-package="com.initech.service.dao.hibernate" /> 2番目の(新しい)Beanは個別に構成されます <bean id="jdbcDeviceDao" class="com.initech.service.dao.jdbc.JdbcDeviceDao"> <property name="dataSource" ref="jdbcDataSource"> </bean> これにより、(もちろん)サーバーの起動時に例外が発生します。 ネストされた例外はorg.springframework.beans.factory.NoSuchBeanDefinitionException:タイプ[com.sevenp.mobile.samplemgmt.service.dao.DeviceDao]の一意のBeanが定義されていません:一致する単一のBeanが予期されていますが、2:[deviceDao、jdbcDeviceDao]が見つかりました このように豆を自動配線しようとするクラスから @Autowired private DeviceDao hibernateDevicDao; 同じインターフェースを実装する2つのBeanがあるためです。 質問: ように豆を構成することは可能ですか 1.既にHibernateDeviceDao自動配線されている既存のクラスを変更する必要はありません 2.次のように、2番目の(新しい)Beanを引き続き使用できます。 @Autowired @Qualifier("jdbcDeviceDao") HibernateDeviceDaoつまり、自動ワイヤリングされるデフォルトのBeanとしてBean を構成する方法が必要です。同時にJdbcDeviceDao、@Qualifierアノテーションで明示的に指定するときに、の使用を許可します。 私がすでに試したこと: プロパティを設定してみた autowire-candidate="false" JdbcDeviceDaoのBean構成: …


11
Spring MVC-Rest Controllerで単純な文字列をJSONとして返す方法
私の質問は基本的にこの質問のフォローアップです。 @RestController public class TestController { @RequestMapping("/getString") public String getString() { return "Hello World"; } } 上記では、Springは「Hello World」を応答本文に追加します。文字列をJSON応答として返すにはどうすればよいですか?引用符を追加できることは理解していますが、それはハックのように感じられます。 この概念の説明に役立つ例を提供してください。 注:これをHTTP応答本文に直接書きたくはありません。文字列をJSON形式で返したいです(有効なJSON形式の応答を必要とするRestyGWTでコントローラーを使用しています)。
137 java  json  spring  rest  spring-mvc 

15
Springを使用してプログラムでプロパティファイルにアクセスしますか?
以下のコードを使用して、プロパティファイルのプロパティをSpring Beanに注入します。 <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations" value="classpath:/my.properties"/> </bean> <bean id="blah" class="abc"> <property name="path" value="${the.path}"/> </bean> プログラムでプロパティにアクセスする方法はありますか?依存関係の注入なしでいくつかのコードを実行しようとしています。だから私はこのようないくつかのコードを持ちたいと思います: PropertyPlaceholderConfigurer props = new PropertyPlaceholderConfigurer(); props.load("classpath:/my.properties"); props.get("path");
137 spring  properties 

17
春のブーツ-管理されたタイプではありません
Spring boot + JPAを使用していますが、サービスの開始中に問題が発生しました。 Caused by: java.lang.IllegalArgumentException: Not an managed type: class com.nervytech.dialer.domain.PhoneSettings at org.hibernate.jpa.internal.metamodel.MetamodelImpl.managedType(MetamodelImpl.java:219) at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:68) at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getMetadata(JpaEntityInformationSupport.java:65) at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:145) at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:89) at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:69) at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:177) at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.initAndReturn(RepositoryFactoryBeanSupport.java:239) at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:225) at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:92) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1625) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1562) これがApplication.javaファイルです。 @Configuration @ComponentScan @EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class }) @SpringBootApplication public class DialerApplication { …

15
Spring-現在のスレッドで使用可能な実際のトランザクションを持つEntityManagerがない-「持続」呼び出しを確実に処理できない
「永続化」メソッドを呼び出してエンティティモデルをSpring MVC Webアプリケーションのデータベースに保存しようとすると、このエラーが発生します。この特定のエラーに関連する可能性のあるインターネットの投稿またはページは実際には見つかりません。EntityManagerFactory Beanに何か問題があるようですが、私はSpringプログラミングにかなり慣れていないので、私にとってはすべてがうまく初期化されており、Webのさまざまなチュートリアル記事に従っているようです。 dispatcher-servlet.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xmlns:jpa="http://www.springframework.org/schema/data/jpa" xsi:schemaLocation=" http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd http://www.springframework.org/schema/data/repository http://www.springframework.org/schema/data/repository/spring-repository-1.5.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd"> <context:component-scan base-package="wymysl.Controllers" /> <jpa:repositories base-package="wymysl.repositories"/> <context:component-scan base-package="wymysl.beans" /> <context:component-scan base-package="wymysl.Validators" /> <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" /> <bean class="org.springframework.orm.hibernate4.HibernateExceptionTranslator"/> <bean id="passwordValidator" class="wymysl.Validators.PasswordValidator"></bean> <bean id="dataSource" …

3
Spring Securityフィルターチェーンの仕組み
Springのセキュリティはフィルターのチェーン上に構築されていることを理解しています。これは、リクエストを傍受し、認証を検出(存在しない)し、認証エントリポイントにリダイレクトするか、リクエストを承認サービスに渡し、最終的にリクエストをサーブレットにヒットするか、セキュリティ例外をスローします。 (未認証または無許可)。DelegatingFitlerProxyはこれらのフィルターを接着します。これらのタスクを実行するために、これらはUserDetailsS​​erviceやAuthenticationManagerなどのアクセスサービスにフィルターをかけます。 チェーン内の主要なフィルターは(順序で) SecurityContextPersistenceFilter(JSESSIONIDから認証を復元します) UsernamePasswordAuthenticationFilter(認証を実行) ExceptionTranslationFilter(FilterSecurityInterceptorからのセキュリティ例外をキャッチ) FilterSecurityInterceptor(認証と承認の例外をスローする場合があります) これらのフィルターの使用方法がわかりません。春に提供されるフォームログインの場合、UsernamePasswordAuthenticationFilterは/ loginにのみ使用され、後者のフィルターは使用されないのですか?フォーム・ログイン名前空間の要素は、これらのフィルタを自動設定しますか?すべてのリクエスト(認証済みかどうかにかかわらず)は、非ログインURLのFilterSecurityInterceptorに到達しますか? ログインから取得したJWT-tokenでREST APIを保護したい場合はどうなりますか?2つの名前空間構成httpタグ、権利を構成する必要がありますか?1つは/ loginでUsernamePasswordAuthenticationFilter、もう1つはREST URLで、customを使用しJwtAuthenticationFilterます。 2つのhttp要素を構成すると2つ作成されますspringSecurityFitlerChainsか?されてUsernamePasswordAuthenticationFilter、私は宣言するまで、デフォルトではオフになってform-login?どのように既存のものからSecurityContextPersistenceFilter取得するフィルターに置き換えるのですか?AuthenticationJWT-tokenJSESSIONID

7
Spring Java Config:ランタイム引数を使用してプロトタイプスコープの@Beanをどのように作成しますか?
SpringのJava Configを使用して、実行時にのみ取得できるコンストラクター引数を使用して、プロトタイプスコープのBeanを取得またはインスタンス化する必要があります。次のコード例(簡潔にするために簡略化)を考えます。 @Autowired private ApplicationContext appCtx; public void onRequest(Request request) { //request is already validated String name = request.getParameter("name"); Thing thing = appCtx.getBean(Thing.class, name); //System.out.println(thing.getName()); //prints name } ここで、Thingクラスは次のように定義されています。 public class Thing { private final String name; @Autowired private SomeComponent someComponent; @Autowired private AnotherComponent anotherComponent; public Thing(String name) { this.name …

12
@Scope(“ prototype”)Beanスコープが新しいBeanを作成しない
注釈付きのプロトタイプBeanをコントローラーで使用したい。しかし、春は代わりにシングルトンBeanを作成しています。そのためのコードは次のとおりです。 @Component @Scope("prototype") public class LoginAction { private int counter; public LoginAction(){ System.out.println(" counter is:" + counter); } public String getStr() { return " counter is:"+(++counter); } } コントローラーコード: @Controller public class HomeController { @Autowired private LoginAction loginAction; @RequestMapping(value="/view", method=RequestMethod.GET) public ModelAndView display(HttpServletRequest req){ ModelAndView mav = new ModelAndView("home"); mav.addObject("loginAction", …
133 spring  spring-mvc 

10
プロパティファイルから値を読み取る方法は?
春を使用しています。プロパティファイルから値を読み取る必要があります。これは、外部プロパティファイルではなく、内部プロパティファイルです。プロパティファイルは以下のようになります。 some.properties ---file name. values are below. abc = abc def = dsd ghi = weds jil = sdd 従来の方法ではなく、プロパティファイルからこれらの値を読み取る必要があります。それを達成する方法は?Spring 3.0の最新のアプローチはありますか?


10
Java Spring Boot:アプリのルート(「/」)をindex.htmlにマップする方法
私はJavaとSpringが初めてです。アプリのルートhttp://localhost:8080/を静的にマップするにはどうすればよいindex.htmlですか?私がhttp://localhost:8080/index.htmlその作品にうまくナビゲートすれば。 私のアプリの構造は: 私config\WebConfig.javaはこのように見えます: @Configuration @EnableWebMvc @ComponentScan public class WebConfig extends WebMvcConfigurerAdapter { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/**").addResourceLocations("/"); } } 追加しようとしたregistry.addResourceHandler("/").addResourceLocations("/index.html");が失敗する。
133 java  spring  spring-boot 

12
IntelliJから実行しているときにSpring Bootプロファイルをアクティブ化するにはどうすればよいですか?
私には5つの環境があります。 - local (my development machine) - dev - qc - uat - live - staging 環境ごとに異なるアプリケーションプロパティを使用したいので、データソースのURLがそれぞれ異なる次のプロパティファイルがあります。 - application.properties (containing common properties) - application-local.properties - application-dev.properties - application-qc.properties - application-uat.properties - application-live.properties IntelliJを使用していて、ローカルマシンのGradleプラグインでbootRunを使用してアプリを実行しています。Tomcatを実行する他のすべての環境に同じアプリケーションwarファイルをデプロイすることを使用します。 追加しようとしました: --spring.profiles.active = local スクリプトパラメータの下で実行構成に追加します。 追加してみました -Dspring.profiles.active = local VMオプションの実行構成に追加します。 どちらも機能しません。起動時にINFOメッセージが表示され続ける:アクティブなプロファイルが設定されていません。デフォルトのプロファイルにフォールバックします:default を使用してWindowsのコマンドラインからアプリを実行した場合 gradle bootRun しかし、私は最初に環境変数を設定しました set SPRING_PROFILES_ACTIVE=local …

8
@Serviceアノテーションはどこに保持する必要がありますか?インターフェースまたは実装?
Springを使用してアプリケーションを開発しています。@Serviceアノテーションを使用する必要があります。私が持っているServiceIとServiceImpl、そのようなことServiceImpl implements ServiceI。@Service注釈をどこに保持するべきかについて、ここで混乱しています。 インターフェースまたは実装に注釈を付ける必要がありますか@Service?これら2つのアプローチの違いは何ですか?
133 spring  service 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.