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

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

4
@Transactionalメソッドは@Transactionalアノテーションなしで別のメソッドを呼び出しますか?
としてマークされたServiceクラスのメソッドを見ました@Transactionalが、同じクラス内の、としてマークされていない他のメソッドも呼び出していました@Transactional。 別のメソッドを呼び出すと、アプリケーションがDBへの別の接続を開いたり、親トランザクションを一時停止したりすることを意味しますか? アノテーション付きの別のメソッドによって呼び出されるアノテーションなしのメソッドのデフォルトの動作は何@Transactionalですか?

9
@ValidアノテーションはSpringで何を示していますか?
次の例では、ScriptFileパラメーターに@Valid注釈が付けられています。 @Validアノテーションは何をしますか? @RequestMapping(value = "/scriptfile", method = RequestMethod.POST) public String create(@Valid ScriptFile scriptFile, BindingResult result, ModelMap modelMap) { if (scriptFile == null) throw new IllegalArgumentException("A scriptFile is required"); if (result.hasErrors()) { modelMap.addAttribute("scriptFile", scriptFile); modelMap.addAttribute("showcases", ShowCase.findAllShowCases()); return "scriptfile/create"; } scriptFile.persist(); return "redirect:/scriptfile/" + scriptFile.getId(); }

12
文字列値のプレースホルダーを解決できませんでした
.propertiesファイルのプロパティを使用しようとしていますが、機能しないようです。 これが私のコードです: @Service("ServiceFTP") @Transactional public class ServiceFTPImpl implements ServiceFTP { @Value("${project.ftp.adresse}") private String adresse; @Value("${project.ftp.login}") private String compte; @Value("${project.ftp.password}") private String motDePasse; @Value("${project.ftp.root}") private String ROOT; [...] } このクラスは、@Valueアノテーションを使用してプロパティを取得します。また、Spring Serviceとして宣言されており、私のinfraContext.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:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"> <context:property-placeholder location="classpath:context-core.properties"/> [...] </beans> を使用してcontext:property-placeholder、このファイルを自分のcontext-core.propertiesファイルにリンクします。 project.ftp.adresse = localhost project.ftp.login …
88 java  spring 

18
java.lang.ClassNotFoundException:org.springframework.web.servlet.DispatcherServlet
私はspring3.1.0.RELEASEを使用しており、サーブレットコンテナはtomcat 7であり、IDEはeclipse indigoで あり、DispatcherServletを含むjar spring-webmvc-3.1.0.RELEASE.jar はlibフォルダに存在しますが、アプリケーションを実行すると、例外が発生します。 java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523) at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:525) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:507) at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:126) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1043) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4957) at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5284) at org.apache.catalina.core.StandardContext$3.call(StandardContext.java:5279) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) この例外が発生する理由とその修正方法を教えてください。 編集:以下は私の設定ファイルです: 1- .springBeans: <?xml version="1.0" encoding="UTF-8"?> <beansProjectDescription> <version>1</version> <pluginVersion><![CDATA[2.9.0.201203011806-RELEASE]]></pluginVersion> <configSuffixes> <configSuffix><![CDATA[xml]]></configSuffix> …

2
SpringMVCコントローラーメソッドでGETHTTPリクエストのパラメーター値を取得するにはどうすればよいですか?
この期間に、Spring MVCショーケースの例(STS dasboardからダウンロード可能)を学習していRequest Mappingます。例について簡単な質問があります。 1)私のhome.jspページには次のリンクがあります: <li> <a id="byParameter" class="textLink" href="<c:url value="/mapping/parameter?foo=bar" />">By path, method, and presence of parameter</a> </li> このリンクからわかるように、値「bar」を含む「foo」パラメーターを持つHTTPGETリクエストを実行しています。 このHTTPリクエストは、コントローラークラスMappingControllerの次のメソッドによって処理されます。 @RequestMapping(value="/mapping/parameter", method=RequestMethod.GET, params="foo") public @ResponseBody String byParameter() { return "Mapped by path + method + presence of query parameter! (MappingController)"; } このメソッドGETは、「foo」という名前のパラメーターを持つHTTPリクエスト(タイプのみ)を管理します このパラメーターの値(「バー」)を取得して、by Parameterメソッドのコード内の変数に入れるにはどうすればよいですか?


4
@RestControllerと@RepositoryRestResourceをいつ使用するか
私はRESTでSpringを使用する方法のさまざまな例を見てきました。私たちの最終目標は春のHATEOAS/HALセットアップです Spring内でRESTをレンダリングするための2つの異なる方法を見てきました @RestControllerコントローラ内経由 @RepositoryRestResourceリポジトリ内経由 私が見つけるのに苦労しているのは、なぜ一方を他方の上に使用するのかということです。HALどちらが最適かを実装しようとすると? 私たちのデータベースバックエンドはNeo4jです。

3
Hibernateの遅延ロードアプリケーションの設計
私はHibernateをSpringフレームワークと組み合わせて使用する傾向があり、それは宣言型のトランザクション境界機能(@Transactionalなど)です。 誰もが知っているように、休止状態はできるだけ非侵襲的で透明性を保つように努めていますが、関係を採用する場合、これは少し難しいことがわかりますlazy-loaded。 透明度のレベルが異なるデザインの選択肢がいくつかあります。 関係を遅延ロードしないようにします(例: fetchType=FetchType.EAGER) これは、遅延読み込みのアイデア全体をバイオライトします。 を使用してコレクションを初期化する Hibernate.initialize(proxyObj); これは、DAOへの比較的高い結合を意味します でインターフェースを定義することはできますがinitialize、他の実装が同等のものを提供することは保証されていません。 永続Modelオブジェクト自体にトランザクション動作を追加します(動的プロキシまたはを使用@Transactional) @Transactionalが永続オブジェクト自体で機能するようには見えませんでしたが、動的プロキシアプローチを試したことはありません。おそらくその休止状態が原因で、プロキシでの操作が行われています。 トランザクションが実際に行われているときの制御の喪失 両方の怠惰/非怠惰なAPIを提供し、例えば、loadData()およびloadDataWithDeps() アプリケーションに、どのルーチンをいつ使用するかを強制的に認識させます。これも密結合です。 メソッドオーバーフローloadDataWithA()、、 ....、loadDataWithX() byId()操作 のみを提供するなどして、依存関係のルックアップを強制します 非オブジェクト指向のルーチン、例えば、の多くを必要とfindZzzById(zid)し、その後getYyyIds(zid)の代わりに、z.getY() トランザクション間に大きな処理オーバーヘッドがある場合は、コレクション内の各オブジェクトを1つずつフェッチすると便利です。 DAOだけでなく、アプリケーションの一部を@Transactionalにします。 ネストされたトランザクションに関する考えられる考慮事項 トランザクション管理に適合したルーチンが必要です(例:十分に小さい) プログラムによる影響は小さいが、トランザクションが大きくなる可能性がある DAOに動的フェッチプロファイルを提供します。loadData(id, fetchProfile); アプリケーションは、いつ使用するプロファイルを知っている必要があります AoPタイプのトランザクション。たとえば、操作をインターセプトし、必要に応じてトランザクションを実行します。 バイトコード操作またはプロキシの使用が必要 トランザクションが実行されるときの制御の喪失 いつものように、黒魔術:) オプションを逃しましたか? lazy-loadedアプリケーション設計における関係の影響を最小限に抑えるために、どのアプローチをお勧めしますか? (ああ、WoTでごめんなさい)

5
Java 1.8 ASMClassReaderがクラスファイルの解析に失敗しました-おそらくまだサポートされていない新しいJavaクラスファイルバージョンが原因です
私のWebアプリケーションはJDK1.7で正常に動作しますが、次の例外を除いて1.8でクラッシュします(Jetty 8でのアプリケーションサーバーの起動中)。Springバージョン3.2.5.RELEASEを使用しています。 例外: org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file - probably due to a new Java class file version that isn't supported yet 春とそれが依存する「asm.jar」ライブラリが原因で問題が発生すると思います。 これを解決するにはどうすればよいですか?
87 java  spring  java-8 

4
SpringBootアプリケーションの環境固有のapplication.propertiesファイル[クローズ]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 3ヶ月前に閉店しました。 この質問を改善する Spring Bootアプリケーションで、環境固有のプロパティファイルを作成したいと思います。戦争中の私のアプリケーションのパッケージタイプであり、組み込みのTomcatで実行しています。stsを使用して、sts自体からメインを実行します。 application- $ {env-value} .propertiesのような環境固有のプロパティファイルを作成できますか? 上記の場合、env-valueはlocal / devl / test / prodのような値になります env-valueファイルをどこに設定しますか?ローカルの場合、stsを介してjvm引数として設定できます SpringBootアプリケーションでapplication.propertiesを読み取るユーザー。 環境固有のプロパティファイルをロードする方法は?たとえば、データベースuid、pwd、schemaなどを環境固有のプロパティファイルに設定した場合、その場合、データソースはその中のプロパティを理解できますか? application.propertiesファイルとapplication-local.propertiesファイルを同時に使用できますか?

7
Spring MVCのModelAndViewのモデルとは何ですか?
この基本的な機能を持つ protected ModelAndView handleRequestInternal(...) { ... return new ModelAndView("welcomePage", "WelcomeMessage", message); } これでmodelandViewが返されることはわかっています。それwelcomePageが私のビュー名であることを知っているので、のようなものwelcomepage.jspが呼び出されることを意味します。 しかし、私はモデル部分とは何かと混同しています。何ですWelcomeMessageとmessageそのシナリオでは、どのようにモデルの仕事は?

4
プログラムでリソースディレクトリパスを取得する方法
私は次のディレクトリレイアウトを持っています: src メイン java リソース sql(データベースのスクリプト) スプリング(構成) webapp ServletContextListenerクラス内で、SQLディレクトリの下のファイルにアクセスしてリストしたいと思います。基本的に私の問題はパスにあります。なぜなら、一言で言えば、ディレクトリの下にファイルをリストすることは次のとおりだからです。 File folder = new File(path); File[] listOfFiles = folder.listFiles(); たぶん私はServletContextEventオブジェクトを使ってパスを構築しようとすることができますresources/sql public void contextInitialized(ServletContextEvent event) { event.getServletContext(); //(getRealPath etc.) } ハードコードされていない相対的な方法でそのパスを設定するための何かが存在しますか?new File("classpath:sql")(できれば春が望ましい)のようなもの、またはservletContextでポイントするために何をすべきresources/sqlですか?
86 java  spring  io 

7
@Test後のロールバックトランザクション
まず第一に、私はこれについてStackOverflowでたくさんのスレッドを見つけました、しかしそれらのどれも私を本当に助けませんでした、それでおそらく重複した質問をすることを残念に思います。 Spring-Testを使用してJUnitテストを実行しています。コードは次のようになります。 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {}) public class StudentSystemTest { @Autowired private StudentSystem studentSystem; @Before public void initTest() { // set up the database, create basic structure for testing } @Test public void test1() { } ... } 私の問題は、自分のテストが他のテストに影響を与えないようにしたいということです。そこで、テストごとにロールバックのようなものを作成したいと思います。私はこれをたくさん検索しましたが、今のところ何も見つかりませんでした。これにはHibernateとMySqlを使用しています

10
Spring:すべての環境プロパティにMapまたはPropertiesオブジェクトとしてアクセスします
アノテーションを使用して、春の環境を次のように構成しています。 @Configuration ... @PropertySource("classpath:/config/default.properties") ... public class GeneralApplicationConfiguration implements WebApplicationInitializer { @Autowired Environment env; } これは、私のプロパティdefault.propertiesがの一部になることにつながりEnvironmentます。@PropertySourceここでメカニズムを使用したいのは、環境設定(config_dirの場所など)に基づいて、いくつかのフォールバックレイヤーとさまざまな動的な場所を介してプロパティをオーバーロードする可能性がすでに提供されているためです。例を簡単にするために、フォールバックを削除しました。 ただし、現在の私の問題は、たとえばでデータソースプロパティを構成したいということですdefault.properties。データソースが使用する予定の設定を詳細に知らなくても、設定をデータソースに渡すことができます。 Properties p = ... datasource.setProperties(p); しかし、問題は、EnvironmentオブジェクトがPropertiesオブジェクトでも、Map同等のものでもないということです。私の見解では、環境のすべての値にアクセスすることは不可能です。なぜならkeySet、iteratorメソッドやそれに匹敵するものがないからです。 Properties p <=== Environment env? 私は何かが足りないのですか?Environmentどういうわけか、オブジェクトのすべてのエントリにアクセスすることは可能ですか?はいの場合、エントリをMapまたはPropertiesオブジェクトにマップできます。プレフィックスでフィルタリングまたはマップすることもできMapます。標準のJavaとしてサブセットを作成します...これが私がやりたいことです。助言がありますか?
86 spring 

22
406を取得するSpringJSONリクエスト(受け入れられません)
これは私のJavaScriptです: function getWeather() { $.getJSON('getTemperature/' + $('.data option:selected').val(), null, function(data) { alert('Success'); }); } これは私のコントローラーです: @RequestMapping(value="/getTemperature/{id}", headers="Accept=*/*", method = RequestMethod.GET) @ResponseBody public Weather getTemparature(@PathVariable("id") Integer id){ Weather weather = weatherService.getCurrentWeather(id); return weather; } spring-servlet.xml <context:annotation-config /> <tx:annotation-driven /> このエラーの取得: GET http://localhost:8080/web/getTemperature/2 406 (Not Acceptable) ヘッダー: 応答ヘッダー Server Apache-Coyote/1.1 Content-Type text/html;charset=utf-8 …
85 java  javascript  ajax  json  spring 

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