Avatar
4
tvd12 Enlightened
tvd12 Enlightened
Performance của ezyfox server thế nào?
<div class="markdown-block">Performance của ezyfox server thế nào?</div>
Answer
Avatar
3
Cường Nguyễn Hữu Beginner
Đề thi thử OCA Java
<div class="markdown-block">Thi thật mà không đỗ là đi luôn 5 củ. Anh/chị nào có đề thi thử share cho em với</div>
Answer
Avatar
3
an nguyen Beginner
an nguyen Beginner
Decentralized Exchange
<div class="markdown-block">Chào Anh Dũng và mọi người, </div><div class="markdown-block">Em đã theo dõi anh và team rất nhiều, trước tiên rất cảm ơn anh và team đã cho ra sản phẩm Ezyfox. </div><div class="markdown-block">Bên cạnh đó cũng cảm ơn anh đã hướng dẩn rất nhiều bài viết hai về Blockchain. </div><div class="markdown-block">Hiện tại em có vài câu hỏi hy vọng anh và team giả đáp giúp, em rất cảm ơn. </div><div class="markdown-block">Em đã research về blockchain mới đây, có ý tưởng về Decentralized Exchange và muốn tìm hiểu và xây 1 Dex thử. Thì anh cho em hỏi hiện nay cần xác định những bước đi như thế nào để xây dụng 1 sàn Dex và nên sử dụng smart contracts platform nào có thể support multi chain nhiều nhất và đầy đủ nhất hiện nay bao gồm (Ethereum, Polygon(Matic), Binance Smart Chain, Cardano(ADA), Polkadot, Solana). </div><div class="markdown-block">Em xin lỗi nếu kiến thức và cách đặt câu hỏi của em không hay mong anh và team bỏ qua. </div><div class="markdown-block">Em cảm ơn anh và team.</div>
Answer
Avatar
3
monkey Enlightened
monkey Enlightened
[Deep Learning] Làm thế nào để xác định được cái hàm tuyến tính nào cần dùng
<code>f(x) = a1x1 +a2x2 + .. + anxn + b;</code><div class="markdown-block"> cơ mà anh cứ sợ nó sai. Theo anh hiểu thì có 2 cách để xác định cái hàm tuyến tính ban đầu: </div><ol class="markdown-numeric-list" start="1"><li class="markdown-list-item"> Sử dụng công cụ đồ hoạ chiếu tất cả các điểm về dạng đồ thì 2 chiều từ đó nhìn vào mật độ phân bố để đoán ra được hàm tuyến tính</li><li class="markdown-list-item"> Có 1 định lý toán học nào đó hoặc có 1 kiểu toán học nào đó có thể áp dụng để suy ra được cái hàm tuyến tính ban đầu này</li></ol><div class="markdown-block">Anh hiểu vậy đúng không em?</div>
Answer
Avatar
2
Điệp Trần Beginner
Điệp Trần Beginner
So sánh giữa websocket vs long polling
<div class="markdown-block">Trong một cuộc trang luận với đồng nghiệp của mình, có 2 luồng ý kiến:</div><ul class="markdown-list"><li class="markdown-list-item"> websocket /long polling là 1, chỉ là 1 cái của p.tây, 1 cái của các pháp sư trung hoa.</li><li class="markdown-list-item"> websocket với long polling là 2 giao thức có cơ chế hoàn toàn khác nhau </li></ul><div class="markdown-block">Mình tạo câu hỏi này muốn ý kiến của mọi người xem cái nào là đúng</div><div class="markdown-block">Có 1 câu hỏi nữa là giữa websocket, long polling, sses thì cái nào tốn ít tài nguyên của server hơn</div>
Answer
Avatar
2
TungDP Beginner
TungDP Beginner
Cách nhúng đối tượng tương tự như @Autowired của Spring boot?
<ul class="markdown-list"><li class="markdown-list-item"> Đặt vấn đề:</li></ul><div class="markdown-block">Lúc đọc cuốn "Những Nguyên Tắc Sống Còn Trong Lập Trình" của anh Tạ Văn Dũng, em có khá ấn tượng về cách anh giải thích về ý tưởng Inversion-of-control. Sau đó, em cũng vọc vạch làm thử 1 cái tương tự, đại ý là em làm như này:</div><ul class="markdown-list"><li class="markdown-list-item"> Bước 1: Dùng Reflection quét package của file Main để tìm ra toàn bộ các class được khai báo trong package, đưa vào 1 HashSet.</li><li class="markdown-list-item"> Bước 2: Tạo annotation @Instance, chạy vòng lặp: những class nào có đánh dấu @Instance thì khởi tạo instance cho nó, lưu vào 1 HashMap&lt;Class&lt;?&gt;, Object&gt;.</li><li class="markdown-list-item"> Bước 3: Tạo annotation @Inject, và tiếp tục lặp qua HashMap ở bước 2, nếu instance nào mà có các field được đánh dấu @Inject thì gắn object đã được tạo trong HashMap(bước 2) vào field đó.</li><li class="markdown-list-item"> Khó khăn:</li></ul><div class="markdown-block">Nhưng em gặp vấn đề khó khi @Inject được đánh dấu vào field mà user lại sử dụng interface chứ không phải trực tiếp class.</div><div class="markdown-block">!<a href="/api/v1/media/cd1910f38bf831716e6e1968e01cbfaa484f3b5b6e9846d940157d2fd6e5cdd1.png" class="markdown-link">2024-02-17_15-22.png</a></div><ul class="markdown-list"><li class="markdown-list-item"> Câu hỏi:</li></ul><div class="markdown-block">Lúc này làm sao để có thể tìm được tất cả các class implements interface đó và chọn ra được class phù hợp để inject vào ạ?</div>
Answer
Avatar
2
hovanvydut Beginner
hovanvydut Beginner
Cách mà ezyfox quản lý các bean
<div class="markdown-block">Dạ em chào anh, em có pull source code ezyfox server và chạy thử example hello word của anh.</div><div class="markdown-block">Em có đọc qua source code nhưng vẫn chưa hiểu hết, và có một số thắc mắc, có gì nhờ anh giúp đỡ ạ:</div><div class="markdown-block">Em thấy trong source example của anh có ví dụ sau:</div><div class="markdown-block markdown-code-block position-relative overflow-auto source-java"><pre> <span class="pl-s">@Setter</span> <span class="pl-s">@EzyPrototype</span> <span class="pl-s">@EzyObjectBinding</span>(write = false) <span class="pl-s">@EzyRequestListener</span>(GREET) <span class="pl-k">public</span> <span class="pl-k">class</span> GreetRequestHandler <span class="pl-k">extends</span> ClientRequestHandler <span class="pl-k">implements</span> EzyDataBinding { <span class="pl-k">private</span> String who; <span class="pl-s">@EzyAutoBind</span> <span class="pl-k">private</span> Greeting greeting; <span class="pl-s">@Override</span> <span class="pl-k">protected</span> <span class="pl-k">void</span> execute() throws EzyBadRequestException { responseFactory.newObjectResponse() .command(GREET) .param(<span class="pl-s">"message"</span>, greeting.greet(who)) .session(session) .execute(); } } </pre></div><div class="markdown-block">Và trước kia em thắc mắc làm sao để biết command nào để biết listen handler tương ứng. Sau khi đọc thì em thấy anh quản lý các lớp này bằng cách đưa nó vào một cái <code class="markdown-inline markdown-inline-code">singletonSet</code> ở <code class="markdown-inline markdown-inline-code">EzySimpleFactoryClass</code>. Và lúc có request gửi lên anh dựa vào command id để lấy listener tương ứng. Tuy nhiên em "KHÔNG THẤY" đoạn anh khởi tạo và add các listener này vào <code class="markdown-inline markdown-inline-code">singletonSet</code> ở <code class="markdown-inline markdown-inline-code">EzySimpleFactoryClass</code>. Em chỉ thấy đoạn get này ở <code class="markdown-inline markdown-inline-code">EzyUserRequestSingletonController</code>:</div><div class="markdown-block markdown-code-block position-relative overflow-auto source-java"><pre> <span class="pl-k">private</span> Map&lt;String, EzyUserRequestHandlerProxy&gt; extractRequestHandlersFromListener() { List&lt;Object&gt; clientRequestHandlers = getClientRequestHandlers(); Map&lt;String, EzyUserRequestHandlerProxy&gt; handlers = <span class="pl-k">new</span> HashMap&lt;&gt;(); <span class="pl-k">for</span> (Object handler : clientRequestHandlers) { Class&lt;?&gt; handleType = handler.getClass(); EzyRequestListener annotation = handleType.getAnnotation(EzyRequestListener.class); String command = EzyRequestListenerAnnotations.getCommand(annotation); handlers.put(command, <span class="pl-k">new</span> EzyUserRequestHandlerProxy((EzyUserRequestHandler) handler)); logger.debug(<span class="pl-s">"add command {} and request handler {}"</span>, command, handler); } <span class="pl-k">return</span> handlers; } <span class="pl-k">private</span> List&lt;Object&gt; getClientRequestHandlers() { <span class="pl-k">return</span> singletonFactory.getSingletons(EzyRequestListener.class); } </pre></div><div class="markdown-block">và <code class="markdown-inline markdown-inline-code">getSingletons</code> ở EzySimpleSingletonFactory là anh duyệt qua <code class="markdown-inline markdown-inline-code">singletonSet</code> để tìm instance có chưa annotation <code class="markdown-inline markdown-inline-code">EzyRequestListener</code></div><div class="markdown-block markdown-code-block position-relative overflow-auto source-java"><pre> <span class="pl-k">public</span> List getSingletons(Class... annotationClasses) { <span class="pl-k">return</span> this.getSingletons((o) -&gt; { Class[] var2 = annotationClasses; <span class="pl-k">int</span> var3 = annotationClasses.length; <span class="pl-k">for</span>(int var4 = 0; var4 &lt; var3; ++var4) { Class annotationClass = var2[var4]; <span class="pl-k">if</span> (o.getClass().isAnnotationPresent(annotationClass)) { <span class="pl-k">return</span> true; } } <span class="pl-k">return</span> false; }); } <span class="pl-k">public</span> List getSingletons(Predicate filter) { List list = <span class="pl-k">new</span> ArrayList(); Iterator var3 = this.singletonSet.iterator(); <span class="pl-k">while</span>(var3.hasNext()) { Object object = var3.next(); <span class="pl-k">if</span> (filter.test(object)) { list.add(object); } } <span class="pl-k">return</span> list; } </pre></div>
Answer
Avatar
2
tvd12 Enlightened
tvd12 Enlightened
Đầu tư cho bản thân là gì?
<div class="markdown-block">Đầu tư cho bản thân là gì?</div>
Answer
Avatar
2
triandn Beginner
triandn Beginner
ứng dụng chatGPT
<div class="markdown-block">Chào anh Dũng!</div><div class="markdown-block">Lại là em đây, em có một chút khó khăn sau. Chuyện là em ứng dụng chatGPT vào trong website đặt tour du lịch của mình. Nhưng chỉ dùng API để tích hợp vào thì nó khá bị động. Em tính hỏi anh là mình có thể huấn luyện mô hình GPT theo dữ liệu của mình được không! Và cách làm sẽ như thế nào ạ!</div><div class="markdown-block">Kết quả em mong muốn là: Em có thể hỏi chatbot về tour nổi bật thì nó sẽ gợi ý sản phẩm từ website của mình!</div><div class="markdown-block">Em cảm ơn anh</div>
Answer
Avatar
2
toilahtc Beginner
toilahtc Beginner
[REST API ] hỏi về các chuẩn của việc viết API
<div class="markdown-block">Khi 1 GET Request có quá nhiều param thì có nên chuyển hóa thành POST request và dùng Requestbody thay cho RequestParam không?</div>
Answer
Avatar
2
Khoi Nguyen Beginner
Khoi Nguyen Beginner
Không kết nối được với database khi chuyển từ spring boot 2 lên spring boot 3
<div class="markdown-block">Em có dùng bản spring boot 2 quen rồi nay đổi lên bản spring boot 3. JPA không kết nối được với database. Cho em hỏi cách giải quyết với ạ.</div><div class="markdown-block">org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]</div><div class="markdown-block">Caused by: java.lang.ClassNotFoundException: Could not load requested class : org.hibernate.dialect.MySQL5InnoDBDialect</div>
Answer
Avatar
2
Tài Nguyễn Trung Beginner
Vấn đề network
<div class="markdown-block">Ở công ty em gặp một trường hợp như thế này.  Em gọi đến một domain bên ngoài (chả hạn trang tapchiphapluat.vn ) sử dụng postman gọi thì vẫn thực hiện được request và nhận về data. Nhưng em thực hiện code bằng java để gọi thì request bị timeout không nhận về data được, em có thử ping domain bằng terminal thì cũng bị timeout . Anh có biết nguyên nhân và cách nào để em có thể gọi đến domain đó nhận data về bằng Java không ạ? Chắc thằng Postman có cách cấu hình nào đó không bị timeout mà em chưa rõ?</div>
Answer