⚠️ Important update regarding the course homepage

Due to a recent security advisory concerning PHP (CERT-EU Security Advisory 2026-018, CVE-2026-109618 and CVE-2026-109619 — remote code execution risk), the course homepage had to be moved away from its previous PHP-based setup. Course materials are not affected: slides, notes, exercises and other documents remain available at the usual location.

LP ECMN (WebLang) students — course materials:

Introduction and AI

Frontend

Backend

Databases

Emmanuel Bruno

Maître de conférences

Université de Toulon · UFR Sciences et Techniques
Chercheur au LIS (UMR 7020), équipe R2I, site de Toulon

Data Management · Information Retrieval · Large Language Models · Multi-Agent Systems · Affective Computing

Enseignement

Mes enseignements portent sur le développement logiciel et les architectures distribuées, avec un accent sur les pratiques modernes d'ingénierie. Les supports ci-dessous proviennent du catalogue pédagogique généré à partir de l'organisation GitHub ebpro().

Domaines d'enseignement

Java et programmation objet · Git · méthodes agiles · CI/CD · services REST · JPA · microservices · conteneurs · développement web et mobile.

Cours, formation Université de Toulon

dev-oocol-fil-rouge

Fil rouge DEV-OOCOL (M1 Info & Math) : projet Java multi-module guidé — domaine transport public Trans'U

m1-info-mathNon publiéSource

Autres cours

ConflictBot

Dépôt Java/Maven minimal de support aux exercices Git du cours : fusions et conflits de branches.

Non publiéSource

HelloGit

Dépôt Java/Maven minimal de support aux exercices Git du cours : clonage, commits, branches et tags.

Source

sample-jakarta-rest-full

Exemple JAX-RS complet (Jakarta REST)

PartielNon publiéSource

sample-java-tcp-client-server

Exemple TCP Client/Server Java

PartielNon publiéSource

Notebooks pédagogiques

notebook-java-ontologies

Introduction pratique aux ontologies OWL

PartielNon publiéSource

notebook-java-reactive

Programmation réactive en Java

PartielNon publiéSource

Exemples et applications de démonstration

ecommerce-catalog

Product-catalog monorepo : API REST Express et PostgreSQL (Drizzle ORM) avec client React Vite Tailwind.

Source

fullstack-minimal-app

Minimal full-stack product catalogue (React, Express, MySQL, Docker), teaching sample of the WebLang course.

Non publiéSource

notebook-containers-intro-sample-java

Exemple Java pour containers-intro

Non publiéSource

notebook-containers-intro-sample-python

Exemple Python pour containers-intro

Non publiéSource

notebook-mobiledev-kotlin-persistence

Kotlin Persistence : Room et stockage mobile

Non publiéSource

sample-annotationprocessor

Exemple d'annotation processor Java : l'annotation @DTO génère des classes DTO à la compilation.

GeléNon publiéSource

sample-cdi

Exemple CDI et Jakarta EE : qualifiers, producers, interceptors et decorators, exécutable en SE ou en serveur.

GeléNon publiéSource

sample-containers-c

Exemple C pour containers-intro

Non publiéSource

sample-containers-exercices-images

Exercices images Docker (containers-intro)

Non publiéSource

sample-containers-helloworld

Hello World Docker (containers-intro)

Non publiéSource

sample-containers-java-helloworld

Hello World Java Docker

Non publiéSource

sample-containers-java-restjpa

Exemple REST+JPA Java Docker

Non publiéSource

sample-containers-multiarch

Exemple multi-arch Docker

Non publiéSource

sample-containers-python-helloworld

Hello World Python Docker

Non publiéSource

sample-containers-python-rest

Exemple REST Python Docker

Non publiéSource

sample-containers-sqlite

Exemple SQLite Docker

Non publiéSource

sample-hellojpa

Exemple JPA hello world : entités, associations one-to-many et many-to-many, transactions et tests.

GeléNon publiéSource

sample-javafx-client

Exemple client JavaFX

Non publiéSource

sample-jdbcdao

Exemple de DAO JDBC générique sur base H2 : opérations de CRUD et datasource DBCP configuré par propriétés.

GeléNon publiéSource

sample-jpa

A simple JPA Application

GeléNon publiéSource

sample-jpalibrary

Exemple JPA/Hibernate : gestion de bibliothèque, relations d'entités, transactions et tests de persistance.

GeléNon publiéSource

sample-kotlin-basic-exercises

Exercices Kotlin basiques

Non publiéSource

sample-quarkus-rest

Exemple REST Quarkus

Non publiéSource

sample-websocket

A sample Websocket application

GeléNon publiéSource

Catalogue des supports pédagogiques

Mes supports de cours, notebooks, présentations, documents HTML/PDF et exemples fonctionnels sont regroupés dans un catalogue dédié, organisé par enseignement et produit selon des pratiques d'intégration continue (CI/CD).

Accéder au catalogue pédagogique

Recherche

Mes travaux portent sur la gestion des données, larecherche d'information et les interactions entre intelligence artificielle et humains. Mes recherches actuelles s'articulent autour de deux axes principaux, tous deux menés en collaboration avec Elisabeth Murisasco etPatrice Bellot.

Interaction humains–grands modèles de langage

Ces travaux prolongent la thèse de Xavier Daull, co-encadrée avec Elisabeth Murisasco et Patrice Bellot. Je conçois des architectures combinant grands modèles de langage (LLM) et expertise humaine pour résoudre des problèmes complexes, notamment dans des contextes impliquant des données sensibles.

Ces architectures sont multi-agents avec expert dans la boucle : plusieurs agents LLM collaborent afin de concevoir, vérifier et capitaliser des outils réutilisables. Les applications concernent notamment la génération de documents scientifiques (articles, brevets) à partir d'informations initiales limitées telles qu'un titre et un résumé.

Analyse des émotions et des sentiments

Ces travaux s'inscrivent dans la continuité de la thèse deSoelie Lerch, co-encadrée avec Elisabeth Murisasco et Patrice Bellot. Je développe des approchesmultimodales combinant texte, audio, vidéo et signaux physiologiques afin de modéliser l'émotion ressentie et d'étudier la proximité émotionnelle entre contenus. Cette thèse a abouti au projet EMOLIS, consacré à l'analyse émotionnelle, aux jeux de données multimodaux et à la recommandation de contenus adaptés.

Publications

Toutes les publications :

Interaction LLM–humain

Analyse émotionnelle

Classification documentaire

Contact

Coordonnées

Emmanuel Bruno
Université de Toulon
Avenue de l'Université
BP 20132
83957 La Garde Cedex, France
bruno.univ-tln.fr
emmanuel.bruno@univ-tln.fr

Clé PGP

Empreinte de la clé publique :

116C CE5F BA2C 0D37 D355 940E 400F 583C 1F81 2EDB

Clé publique sur demande :emmanuel.bruno@univ-tln.fr