問題タブ [spring-mybatis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - MyBatis @MapperScan が存在する場合、春のクラウド構成クライアントがプロパティを注入しない
@Configuration
Application、DBScannerConfig、ElasticSearchConfiguration という3 つの注釈付きクラスを持つスプリング ブート アプリケーションがあります。私のアプリケーションは、Spring Cloud Config Server からの構成も使用します。
問題は@Value("${key}")
、DBScannerConfig クラス内で属性に注釈を付けようとすると、プロパティが挿入されないことです。ただし、@Value("${key}")
他の 2 つのクラスでアノテーションを使用すると、構成はうまく機能します。
実際に@MapperScan
は、DBScannerConfig 構成クラスに存在する注釈に関連している可能性があると思います。
私がやりたいことは、@MapperScan
注釈付きのクラスでプロパティを取得するか、スプリングのデータソースを自動配線できるようにすることですが、そのようなことを達成することはできません。
以前にこの問題に直面した人はいますか? コードは次のとおりです。
アプリケーション.java
DBScannerConfig.java
@Autowired
Application.java のデータソースのコメントを外すと、有効なオブジェクトが得られます。ただし、DBScannerConfig.java では NULL が取得されます。
Application.java クラス内で Datasource オブジェクトをオートワイヤしてから、それを DBSCannerConfig.java で使用しようとしましたが、うまくいきませんでした。注釈を Application.java クラスに追加するとすぐに、@MapperScan
Spring データソースの自動配線が停止します。
java - MyBatis で Spring を使用する場合の Java 例外
httpInvokerに入った後に例外が発生しました。次のようになります。
何時間もの調査の結果、spring-db.xml で問題が発生していることがわかりました。そこには、com.mchange.v2.c3p0.ComboPooledDataSource や environmentProperties などに接続するための定義があります。そこから何かをコメント/コメント解除して、段階的に、行ごとに試してみましたが、次のように定義された部分があります。
コンフィギュアラーを呼び出している最後の Bean にコメントすると、すべてが (例外なく) うまくいきます。
その例外の取得を停止するにはどうすればよいですか? 多分私はそのBeanを他の方法で書かなければなりませんか?(コード全体を提供できなくて申し訳ありません。私はそれを提供するために制限されています..)
使用しています: Eclipse Mars Java 1.8 Spring 3.1 MyBatis 32 ビット Windows
mysql - spring mybatis with mysql は、データを選択すると「PoolableConnectionFactory を作成できません (FUNCTION java_blog.getdate が存在しません)」というエラーが発生します。
コード: 私の Java ドメイン: ユーザー
セッターとゲッターがあります。
私のmysql dbテーブルユーザーは次のようになります:
java_blog.user からデータを選択すると、エラーが発生します。
エラーメッセージ:</p>
org.springframework.web.util.NestedServletException: リクエストの処理に失敗しました。ネストされた例外は org.mybatis.spring.MyBatisSystemException: ネストされた例外は org.apache.ibatis.exceptions.PersistenceException:
データベースのクエリ中にエラーが発生しました。原因: org.springframework.jdbc.CannotGetJdbcConnectionException: できませんでした
JDBC 接続を取得します。ネストされた例外は org.apache.commons.dbcp.SQLNestedException です: PoolableConnectionFactory を作成できません (FUNCTION java_blog.getdate は存在しません)
エラーは com/blog/persistence/dao/user/IUserDAO.java に存在する可能性があります (最良の推測)
エラーには com.blog.persistence.dao.user.IUserDAO.getUserById が関係している可能性があります
クエリの実行中にエラーが発生しました
原因: org.springframework.jdbc.CannotGetJdbcConnectionException: JDBC 接続を取得できませんでした。ネストされた例外は
org.apache.commons.dbcp.SQLNestedException: PoolableConnectionFactory を作成できません (FUNCTION java_blog.getdate が存在しません) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:981) org.springframework.web.servlet.FrameworkServlet. doGet(FrameworkServlet.java:860) javax.servlet.http.HttpServlet.service(HttpServlet.java:622) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:845) javax.servlet.http.HttpServlet.サービス(HttpServlet.java:729) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) org.springframework. web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
spring - SpringMVC と Mybatis は「挿入」を実行できません
localhost:8080/myregister.jsp(コントローラー: localhost:8080/user/register) で送信をクリックすると、次のようになります。
リクエストの処理に失敗しました。ネストされた例外は org.apache.ibatis.binding.BindingException: バインドされたステートメントが無効です (見つかりません): com.cn.hnust.dao.UserMapper.insert
localhost:8080/login.jsp,(controller: localhost:8080/user/login) で送信をクリックすると、機能します。
[MYSQL:
DROP TABLE IF EXISTS user_t
;
CREATE TABLE user_t
(
username
varchar(40) NOT NULL,
password
varchar(255) NOT NULL,
PRIMARY KEY ( username
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
]
一般的な UserMapper.xml に mybatis-generator-core-1.3.2 を使用していますが、なぜ「挿入」機能しか実行できないのですか?
Maven プロジェクト全体は github にあります: https://github.com/Bonsen/Spring-SpringMVC-mybatis。
caching - MyBatis Cache を外部 (マッパーの外部) にフラッシュする
私は<cache/>
xml マッパー ファイルを介してアクティブ化された第 2 レベルのキャッシュで MyBatis を使用しています。
たとえば、直接 jdbcTemplate を介して、MyBatis から切り離された基礎となる DB/DataSource と対話したいとします。
MyBatisがキャッシュされたクエリ結果を保持しているテーブルでjdbcTemplateを介して挿入/更新/削除すると、MyBatisキャッシュが適切にフラッシュされることをどのように保証できますか。
言い換えれば、特定のキャッシュ名前空間の MyBatis マッパーの外部から MyBatis にそのキャッシュを強制的にフラッシュさせるにはどうすればよいでしょうか?
注釈については承知して@Options(flushCache=true)
いますが、これはマッパー インターフェイスの外では機能しないようです。
spring - springboot+mybatis 例外: org.springframework.beans.factory.NoSuchBeanDefinitionException
次の例外が発生しました。
org.springframework.beans.factory.NoSuchBeanDefinitionException: 依存関係のタイプ [pers.panxin.springboot.demo.mapper.UserMapper] の適格な Bean が見つかりません: この依存関係のオートワイヤー候補として適格な少なくとも 1 つの Bean が必要です。依存関係アノテーション: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
コントローラー:
サービス:
サービス実装:
マッパー インターフェイス:
アプリケーションのメイン クラス
例外がどのように発生したか、またはコードで何か問題が発生しましたか?
eclipse - Mybatis と Spring を使用した Vaadin7
Vaadin と Mybatis-Spring は初めてです。
私の UI クラスは @Autowired アノテーションを使用して Service クラスを呼び出すことができませんでした。サービスクラスに @Service を追加しました。
私の見解:
私のアプリケーション context.xml は resources フォルダーの下にあります。
DevContext.xml
ServiceDevContext.xml
Web.xml
コードが機能していません。見逃したものを見つけてください